Tag: dotnet linux

在dotnet SDK和Docker容器上

这个问题应该是非常简单的。 假设你正在尝试运行一个Asp.Net Core Web Api。 该应用程序将运行在干净的Linux安装中的Docker容器(味道并不重要)。 该容器位于一个带有泊坞窗工具的Kubernetes集群中的POD内部。 Dockerfile需要定位一个特定版本的aspnetcore,看起来像这样: FROM microsoft/aspnetcore:1.1 COPY . /app WORKDIR /app EXPOSE 5000/tcp ENV ASPNETCORE_URLS http://*:5000 ENTRYPOINT ["dotnet", "run"] testing一下,我运行一个Docker命令 所以我被困在这里, 我假设ENTRYPOINT定义中的“dotnet”命令是运行.Net Core SDK。 如果此Linux代理上的容器没有安装SDK,或者所安装的SDK是您尝试使用的SDK的较旧版本,那么您将如何将此代码移植到Docker构build中? 从本质上来说,ENTRYPOINT中的“dotnet”命令是指一个不存在的程序? 我是否应该用容器打包SDK? 如果是这样,该行应该读取ENTRYPOINT [“./dotnet”,“run”],因为它在Linux上? 另外如果是这样,我需要执行什么其他步骤来打包SDK? 我的假设是SDK已经打包在Microsoft / aspnetcore:1.1的容器中了吗? 如果是这样,有没有办法在ENTRYPOINT定义中引用打包的可执行文件? 任何有识之士将不胜感激!