如何解决AWS CodeBuild 的 Docker 文件AWS S3 zip 作为源
我使用 AWs CodeBuild 创建一个 docker 镜像以推送到 AWS ECR 存储。我的源代码以 .zip 格式存储在 S3 存储中,结构如下:
Project_1 (folder)
...
Project_1.csproj
Dockerfile
.dockerignore
我的 Docker 文件是
FROM mcr.microsoft.com/dotnet/core/sdk:2.2 AS build
workdir /app
copY ./ ./
RUN dotnet publish Project_1/Project_1.csproj -o out -c Release
FROM mcr.microsoft.com/dotnet/core/aspnet:2.2 AS runtime
workdir /app
copY --from=build ./app/Project_1/out ./
ENV ASPNETCORE_URLS http://+:5001
EXPOSE 5001
ENTRYPOINT ["dotnet","Project_1.dll"]
在 AWS CodeBuild 中运行 docker build 命令时,我收到以下错误:
Step 4/11 : RUN dotnet publish Project_1/Project_1.csproj -o out -c Release
---> Running in e486d1cf8207
Microsoft (R) Build Engine version 16.0.450+ga8dc7f1d34 for .NET Core
copyright (C) Microsoft Corporation. All rights reserved.
MSBUILD : error MSB1009: Project file does not exist.
当我在本地运行相同的 docker build 命令时,一切都成功完成。 在我看来,由于使用 S3 zip 作为源,copY 命令无法正确完成并且没有文件被复制到 /app 文件夹。
请大家指出我的 Dockerfile 中的一个错误,或者分享它的正确变体。谢谢
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。