微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

无法为 Azure Edge 构建 docker C#,错误 [build-env 6/6] RUN dotnet publish -c Release -o out

如何解决无法为 Azure Edge 构建 docker C#,错误 [build-env 6/6] RUN dotnet publish -c Release -o out

我试图在 C# 上构建 Azure Edge 解决方案,但它正在下降,我已经安装了 don't 2.1 运行时和 SDK,这是输出

dotnet --list-sdks 
2.1.812 [/usr/local/share/dotnet/sdk]

dotnet --list-runtimes                                 
Microsoft.AspNetCore.All 2.1.24 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.1.24 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.1.24 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]

我已检查项目中存在双 .sln 或 .csproj 文件

enter image description here

这里是日志:

[+] Building 3.7s (16/16) FINISHED                                                                                                                                                            
 => [internal] load build deFinition from Dockerfile.amd64                                                                                                                               0.0s
 => => transferring dockerfile: 126B                                                                                                                                                     0.0s
 => [internal] load .dockerignore                                                                                                                                                        0.0s
 => => transferring context: 2B                                                                                                                                                          0.0s
 => [internal] load Metadata for docker.io/microsoft/dotnet:2.1-runtime-stretch-slim                                                                                                     2.8s
 => [internal] load Metadata for docker.io/microsoft/dotnet:2.1-sdk                                                                                                                      3.6s
 => [stage-1 1/4] FROM docker.io/microsoft/dotnet:2.1-runtime-stretch-slim@sha256:533af29cad1c859841fc5e93bf73011afcd9e3186146f1bb1365a91f2c29e85e                                       0.0s
 => [internal] load build context                                                                                                                                                        0.0s
 => => transferring context: 3.36kB                                                                                                                                                      0.0s
 => [build-env 1/6] FROM docker.io/microsoft/dotnet:2.1-sdk@sha256:d11699f356ee5f0d199526a7eded1c4827ea71b8378cdbe421ed4575a2b1caa8                                                      0.0s
 => CACHED [stage-1 2/4] workdir /app                                                                                                                                                    0.0s
 => CACHED [build-env 2/6] workdir /app                                                                                                                                                  0.0s
 => CACHED [build-env 3/6] copY *.csproj ./                                                                                                                                              0.0s
 => CACHED [build-env 4/6] RUN dotnet restore                                                                                                                                            0.0s
 => CACHED [build-env 5/6] copY . ./                                                                                                                                                     0.0s
 => CACHED [build-env 6/6] RUN dotnet publish -c Release -o out                                                                                                                          0.0s
 => CACHED [stage-1 3/4] copY --from=build-env /app/out ./                                                                                                                               0.0s
 => CACHED [stage-1 4/4] RUN useradd -ms /bin/bash moduleuser                                                                                                                            0.0s
 => exporting to image                                                                                                                                                                   0.0s
 => => exporting layers                                                                                                                                                                  0.0s
 => => writing image sha256:50183243f43214b5a9c9251bd3f349244d9171113cc27b2801ebae25935cb7c0                                                                                             0.0s
 => => naming to draftfoxcontainerdev2.azurecr.io/v2/linux/parsermodule:0.0.1-amd64                                                                                                      0.0s
[+] Building 1.2s (12/15)                                                                                                                                                                     
 => [internal] load build deFinition from Dockerfile.amd64                                                                                                                               0.0s
 => => transferring dockerfile: 126B                                                                                                                                                     0.0s
 => [internal] load .dockerignore                                                                                                                                                        0.0s
 => => transferring context: 2B                                                                                                                                                          0.0s
 => [internal] load Metadata for docker.io/microsoft/dotnet:2.1-runtime-stretch-slim                                                                                                     0.5s
 => [internal] load Metadata for docker.io/microsoft/dotnet:2.1-sdk                                                                                                                      0.3s
 => [internal] load build context                                                                                                                                                        0.0s
 => => transferring context: 2.92kB                                                                                                                                                      0.0s
 => [stage-1 1/4] FROM docker.io/microsoft/dotnet:2.1-runtime-stretch-slim@sha256:533af29cad1c859841fc5e93bf73011afcd9e3186146f1bb1365a91f2c29e85e                                       0.0s
 => [build-env 1/6] FROM docker.io/microsoft/dotnet:2.1-sdk@sha256:d11699f356ee5f0d199526a7eded1c4827ea71b8378cdbe421ed4575a2b1caa8                                                      0.0s
 => CACHED [build-env 2/6] workdir /app                                                                                                                                                  0.0s
 => CACHED [build-env 3/6] copY *.csproj ./                                                                                                                                              0.0s
 => CACHED [build-env 4/6] RUN dotnet restore                                                                                                                                            0.0s
 => CACHED [build-env 5/6] copY . ./                                                                                                                                                     0.0s
 => ERROR [build-env 6/6] RUN dotnet publish -c Release -o out                                                                                                                           0.6s
------                                                                                                                                                                                        
 > [build-env 6/6] RUN dotnet publish -c Release -o out:                                                                                                                                      
#13 0.557 Microsoft (R) Build Engine version 16.2.37902+b5aaefc9f for .NET Core
#13 0.557 copyright (C) Microsoft Corporation. All rights reserved.
#13 0.557 
#13 0.562 MSBUILD : error MSB1011: Specify which project or solution file to use because this folder contains more than one project or solution file.
------
executor Failed running [/bin/sh -c dotnet publish -c Release -o out]: exit code: 1
arnab.h.ghosh@AMAC02X335VJG5M edgesolution %     

我用一个新的示例 c# 图像进行了测试,该图像正在构建中没有任何问题

 => [internal] load build deFinition from Dockerfile.amd64                                                                0.0s
 => => transferring dockerfile: 43B                                                                                       0.0s
 => [internal] load .dockerignore                                                                                         0.0s
 => => transferring context: 34B                                                                                          0.0s
 => [internal] load Metadata for mcr.microsoft.com/dotnet/core/runtime:3.1-buster-slim                                    0.5s
 => [internal] load Metadata for mcr.microsoft.com/dotnet/core/sdk:3.1-buster                                             0.5s
 => [build-env 1/6] FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster@sha256:0fece15a102530aa2dad9d247bc0d05db6790917696  0.0s
 => [stage-1 1/4] FROM mcr.microsoft.com/dotnet/core/runtime:3.1-buster-slim@sha256:6c67bed8a41e4cadb44303d509f4df707ff4  0.0s
 => [internal] load build context                                                                                         0.0s
 => => transferring context: 1.73kB                                                                                       0.0s
 => CACHED [build-env 2/6] workdir /app                                                                                   0.0s
 => [build-env 3/6] copY *.csproj ./                                                                                      0.0s
 => [build-env 4/6] RUN dotnet restore                                                                                   15.5s
 => [build-env 5/6] copY . ./                                                                                             0.0s 
 => [build-env 6/6] RUN dotnet publish -c Release -o out                                                                  3.6s 
 => CACHED [stage-1 2/4] workdir /app                                                                                     0.0s
 => [stage-1 3/4] copY --from=build-env /app/out ./                                                                       0.1s
 => [stage-1 4/4] RUN useradd -ms /bin/bash moduleuser                                                                    0.3s 
 => exporting to image                                                                                                    0.0s 
 => => exporting layers                                                                                                   0.0s 
 => => writing image sha256:b6c94d4a3a011c0e5e596a25662b8a5e84d47253f3ed3bf2c8b0c6743331291f                              0.0s
 => => naming to localhost:5000/samplemodule:0.0.1-amd64   

解决方法

正如您的日志所述,您有多个项目或解决方案文件,应该指定一个或去掉一个。

MSBUILD:错误 MSB1011:指定要使用的项目或解决方案文件,因为此文件夹包含多个项目或解决方案文件。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。