gpt4 book ai didi

.net - 在Dockerfile中使用Dotnet和MSBuild工具

转载 作者:行者123 更新时间:2023-12-02 19:45:08 24 4
gpt4 key购买 nike

我试图在dockerfile中构建一个ASP.net MVC项目,以便在容器中运行。
我尝试同时使用dotnet镜像和servercore镜像
在不同的dockerfile中,然后使用Chocolately安装其他丢失的软件包并尝试使用msbuild进行构建,但我遇到了麻烦。

FROM microsoft/windowsservercore:10.0.14393.1480
SHELL ["powershell", "-Command", "$ErrorActionPreference='Stop'; $ProgressPreference='SilentlyContinue';"]
WORKDIR /appdir
EXPOSE 80
EXPOSE 443

COPY . /appdir/
COPY /ExFin.Web/packages.config /appdir/

ENV chocolateyUseWindowsCompression 'true'
RUN Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iwr https://chocolatey.org/install.ps1 -UseBasicParsing | iex
RUN choco install visualstudio2019buildtools -y;
RUN choco install dotnet4.5.2 -Force -y;
RUN choco install nuget.commandline --pre

ENV NUGET_PATH "C:\Chocolatey\lib\NuGet.CommandLine.3.5.0\tools"
ENV MSBUILD_PATH "C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\MSBuild\15.0\Bin"

RUN $env:PATH = $env:NUGET_PATH + ';' + $env:MSBUILD_PATH + ';' + $env:PATH; `
RUN [Environment]::SetEnvironmentVariable('PATH', $env:PATH, [EnvironmentVariableTarget]::Machine)

RUN nuget.exe restore packages.config -PackagesDirectory /appdir/packages/
RUN ["C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\MSBuild\15.0\Bin\msbuild.exe", "C:/appdir/ExFin.Web/ExFin.Web.csproj"]

错误:
失败的
  • dotnetfx(已退出-1073741502)-运行'C:\ ProgramData \ chocolatey \ lib \ dotnetfx \ tools \ ChocolateyInstall.ps1'时出错。
    有关详细信息,请参见日志。
  • visualstudio2019buildtools(已退出-1073741502)-运行'C:\ ProgramData \ chocolatey \ lib \ visualstudio2019buildtools \ tools \ ChocolateyInstall.ps1'时出错。
    有关详细信息,请参见日志。

  • 这是否意味着需要重新启动?

    最佳答案

    使用基于Windows Server Core的Microsoft的基于.NET Framework SDKDockerfile(.NET Framework Runtime)镜像。
    该图像包括:

  • .NET Framework运行时
  • Visual Studio生成工具
  • Visual Studio测试代理
  • NuGet CLI
  • .NET Framework目标包
  • ASP.NET Web目标
  • 关于.net - 在Dockerfile中使用Dotnet和MSBuild工具,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63934103/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com