【发布时间】:2020-05-05 00:02:42
【问题描述】:
我有一个控制台应用程序的 docker 容器,它应该使用 Console.Readline 命令从用户那里获取一个值,然后继续它的工作。但是,每当我在 myapplication 中使用 Console.Readline 命令并尝试从中创建图像时,都会出现以下异常:
System.IO.IOException: '句柄无效。'
这是我的 docker 文件:
FROM mcr.microsoft.com/dotnet/core/runtime:3.1-nanoserver-1903 AS base
WORKDIR /app
FROM mcr.microsoft.com/dotnet/core/sdk:3.1-nanoserver-1903 AS build
WORKDIR /src
COPY ["DockerSample/DockerSample.csproj", "DockerSample/"]
RUN dotnet restore "DockerSample/DockerSample.csproj"
COPY . .
WORKDIR "/src/DockerSample"
RUN dotnet build "DockerSample.csproj" -c Release -o /app/build
FROM build AS publish
RUN dotnet publish "DockerSample.csproj" -c Release -o /app/publish
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "DockerSample.dll"]
这是我在控制台应用程序中的代码:
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
var input=Console.ReadLine();
//do something with my input
}
}
【问题讨论】:
-
感谢您的评论。然而,这并不能回答我的问题,我无法在使用 console.readline 时从我的应用程序创建图像,但他们已经创建了它,只是试图以交互模式运行容器
标签: c# docker console-application docker-container