【问题标题】:Docker and VS MacDocker 和 VS Mac
【发布时间】:2018-10-02 23:30:53
【问题描述】:

按照 Docker 页面上的说明,我创建了一个非常简单的 Dockerfile,如下所示:

 FROM microsoft/dotnet:sdk AS build-env
 WORKDIR /app

 # Copy csproj and restore as distinct layers
 COPY *.csproj ./
 RUN dotnet restore

 # Copy everything else and build
 COPY . ./
 RUN dotnet publish -c Release -o out

 # Build runtime image
 FROM microsoft/dotnet:aspnetcore-runtime
 WORKDIR /app
 COPY --from=build-env /app/out .
 ENTRYPOINT ["dotnet", "dockertest.dll"]

这实际上是 Docker 上的示例的副本 site 只是更改了应用程序名称。

我使用 Visual Studio for Mac 创建了一个非常简单的 ASP.Net 应用程序(实际上,只是添加了一个小 HTML 文件的默认应用程序)。

当我第一次运行docker build -t dockertest . 时,dotnet publish 的行失败了。然后我手动运行dotnet publish 并通过了它。

现在复制失败:

第 9/10 步:复制 --from=build-env /app/out 。

 COPY failed: stat /var/lib/docker/overlay2/1484306cebf1def83638270757e70a8cf874fb5a167f39e5bfaae92a47cc071c/merged/app/out: no such file or directory

发生了什么事?

【问题讨论】:

    标签: docker visual-studio-mac


    【解决方案1】:

    那么您是在容器内还是在主机上运行dotnet publish? Docker 文件试图在容器内运行这些命令,因此在主机上运行这些命令不会解决问题。

    您是否尝试在 VS for Mac 中右键单击您的项目并将“添加 Docker 支持”添加到您的应用程序?它应该生成一个 docker 文件,然后您可以在 VS 中在容器内运行/调试您的应用程序。

    【讨论】:

      猜你喜欢
      • 2018-03-20
      • 1970-01-01
      • 2017-04-22
      • 2017-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-28
      相关资源
      最近更新 更多