Dotnet核心Docker应用挂在Synology版本上
我有一个用dotnet核心编写的REST API,我之前在Linux VM(Ubuntu)上构build了Docker镜像。 build立的形象,我能够推动没有太多的问题。 但是,当我在Synology盒子上运行它时,它会抛出下面引用CLI更改的错误。
Project app (.NETCoreApp,Version=v1.0) will be compiled because the version or bitness of the CLI changed since the last build
我以为我只要telnet进入Synology盒子,在那里build立图像。 不幸的是,它每当它试图运行dotnetfunction时都会挂起。 下面是Dockerfile和docker内置的日志。
Dockerfile:
FROM microsoft/dotnet:1.0.0-preview2-sdk WORKDIR /app COPY project.json . RUN dotnet restore EXPOSE RANDOM_PORT_NUMBER COPY . . RUN dotnet publish -c Release RUN chmod +x /app/bin/Release/netcoreapp1.0/publish RUN cd /app/bin/Release/netcoreapp1.0/publish ENTRYPOINT dotnet run app.dll
这是从docker构build过程中得到的输出:
Step 1 : FROM microsoft/dotnet:1.0.0-preview2-sdk ---> 6704971aa9c1 Step 2 : WORKDIR /app ---> Using cache ---> cc0d0e6897cc Step 3 : COPY project.json . ---> Using cache ---> f14d22994204 //IF THIS LINE IS COMMENTED OUT FROM THE DOCKERFILE, STEP 6 BELOW LOCKS UP Step 4 : RUN dotnet restore ---> Running in b23cfaeb638a Step 4 : EXPOSE RANDOM_PORT_NUMBER ---> Using cache ---> 019346309919 Step 5 : COPY . . ---> Using cache ---> 4b28eb273159 Step 6 : RUN dotnet publish -c Release ---> Running in eb5e2de4b744
从我读过的内容来看,这可能是一个错误,在1.12版本中解决(不知道是否属实),但是我select了Synology,所以不能轻易升级到最新版本。 或者,CLI改变什么意思,为什么我必须重新编译?
- 将.NET Core控制台应用程序构build到Docker中
- 剖析Docker容器上运行的C#点networking应用程序
- 在Visual Studio中使用docker supper的空项目
- 单声道TLS1.2问题 – btls-cert-sync“命令未find”
- rabbitmq优雅的出口应该等待事件处理者
- 在涉及目标“DockerBuildServiceReferences”的目标依赖关系图中存在循环依赖关系
- 错误:'ascii'编解码器无法解码位置91中的字节0xe2:序号不在范围内(128)
- 在Mono中使用UnixSignal引发System.ArgumentException
- 如何构build两个二进制文件.net core 2控制台应用程序