最近同事收到要把.Net Core
程式轉移到 K8S,但是維運不會處理 Image,剛好我對 Docker 有小小的研究,但對 .Net Core 不是很熟,最後爬了文章,成功處理 Image。
Dockerfile 參考
dotnet-docker/samples/aspnetapp at main · dotnet/dotnet-docker · GitHub
執行遇到錯誤
原開發是 window ,程式搬到 docker ,執行會有錯誤。如下:
1 | #12 1.179 /usr/share/dotnet/sdk/5.0.202/Sdks/Microsoft.NET.Sdk/targets/Microsoft.PackageDependencyResolution.targets(241,5): error MSB4018: The "ResolvePackageAssets" task failed unexpectedly. [/source/xxxx/xxxx.csproj] |
由於 docker 上環境路徑不正確,做後發現下dotnet restore
可以解決…,因為我不是寫 .Net Core 我就先忽略研究,初估重製環境設定路徑。
dotnet restore
範例
1 | # https://hub.docker.com/_/microsoft-dotnet |
APP_PROJECT
再置換掉對應專案名稱
因為我朋友專案沒有sln 檔案,所以上面那幾但註解
這樣就順利 build 出 docker image