基于.NetCore 3.0预览在docker容器中运行.NetCore应用程序

基于.NetCore 3.0预览在docker容器中运行.NetCore应用程序,docker,.net-core,docker-compose,console-application,Docker,.net Core,Docker Compose,Console Application,在运行我的应用程序时退出,代码为150 输出:调试 如果在Docker容器中运行应用程序时遇到问题,请确保在Docker文件中指定了适用于.NET Core SDK的正确映像 对于.NET Core SDK 3.0.100-preview3-010431 Dockerfile创建不正确。 您可以在hub.docker.com上查看各种SDK的Dockerfile示例 例如: FROM buildpack-deps:stretch-scm # Install .NET CLI depende

在运行我的应用程序时退出,代码为
150

输出:调试



如果在Docker容器中运行应用程序时遇到问题,请确保在Docker文件中指定了适用于.NET Core SDK的正确映像

对于.NET Core SDK 3.0.100-preview3-010431

Dockerfile创建不正确。 您可以在hub.docker.com上查看各种SDK的Dockerfile示例

例如:

FROM buildpack-deps:stretch-scm

# Install .NET CLI dependencies
RUN apt-get update \
    && apt-get install -y --no-install-recommends \
        libc6 \
        libgcc1 \
        libgssapi-krb5-2 \
        libicu57 \
        libssl1.1 \
        libstdc++6 \
        zlib1g \
    && rm -rf /var/lib/apt/lists/*

# Install .NET Core SDK
ENV DOTNET_SDK_VERSION 3.0.100-preview3-010431

请找时间阅读someday@AndrewDzhur现在是个好时机。糟糕的问题很快就会被关闭和删除。在这种情况下,问题完全没有了。这个答案是什么?为什么docker映像包含SDK?它只需要运行时。如果您创建一个自包含的应用程序,甚至不是这样。运行时将包含在部署包中。我的回答相当准确。它清楚地表明,该映像将适用于项目所基于的SDK。如果你再读一遍,不写评论会更好。这个问题被否决是有原因的——毫无疑问。至于答案,如果您进行检查,您将看到运行.NET核心应用程序不需要SDK,只需要运行时。如果您询问
我应该将哪个SDK版本添加到生产Docker映像中?
正确答案将是
无,您只需要运行时
。如果问题是
我应该向build server Docker映像添加什么SDK版本?
FROM buildpack-deps:stretch-scm

# Install .NET CLI dependencies
RUN apt-get update \
    && apt-get install -y --no-install-recommends \
        libc6 \
        libgcc1 \
        libgssapi-krb5-2 \
        libicu57 \
        libssl1.1 \
        libstdc++6 \
        zlib1g \
    && rm -rf /var/lib/apt/lists/*

# Install .NET Core SDK
ENV DOTNET_SDK_VERSION 3.0.100-preview3-010431