.net core, docker 在vs2019開發過程中的問題以及解決辦法


.net core, docker 在vs2019開發過程中的問題以及解決辦法

記錄下來,幫助Ta人~

 

1、vs調試,快Build完后提示Docker 端口:xxxx,xxxx,xxxx占用

解決辦法:取消vs調試狀態,打開Window任務管理器,結束進程com.docker.backend.exe,重新再啟動vs調試,這時候應該不需要再重新build。

如果這時候繼續要build了,就停止vs調試,退出Docker,結束進程com.docker.backend.exe,再啟動Docker,重新再啟動vs調試。

 

2、vs調試,docker pull 拉取包報錯

提示錯誤:Get https://mcr.microsoft.com/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

原因:你的網絡環境不行,我當時出這個問題時,是用的湖北廣電

嘗試手動拉取:docker pull mcr.microsoft.com/dotnet/core/aspnet:3.0-buster-slim 仍然一樣的報錯

 

3、vs調試,build出錯

提示錯誤:mkdir /host_mnt/c: file exists

原因分析:可能是在你Docker跑起來的過程中,你本機電腦的開機密碼有修改

解決辦法:重啟docker,會提示重新輸入計算機開機密碼。

 

4、.net core 3.0+ mvc 動態編譯的問題

1> 配置動態編譯

VS-->NuGet包管理器,安裝Install-Package Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation -Version 3.0.0+

public override void ConfigureServices(IServiceCollection services)
{
      base.ConfigureServices(services);

      services.AddControllersWithViews()
              .AddRazorRuntimeCompilation();
}

2> 配置動態編譯后,報如下錯誤,如何解決?

編輯項目,配置如下屬性

<PreserveCompilationReferences>true</PreserveCompilationReferences>
<PropertyGroup>
  <TargetFramework>netcoreapp3.0</TargetFramework>
  <DockerTargetOS>Linux</DockerTargetOS>
  <DockerfileContext>..\..\..</DockerfileContext>
  <DockerComposeProjectPath>..\..\..\docker-compose.dcproj</DockerComposeProjectPath>
  <PreserveCompilationReferences>true</PreserveCompilationReferences>
</PropertyGroup>

 

 

 

 

5、


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM