asp.net core 发布到 docker 容器时文件体积过大及服务端口的配置疑问
在 asp.net core 發(fā)布時(shí),本人先后產(chǎn)生了3個(gè)疑問。
1、發(fā)布的程序?yàn)槭裁床荒茉赿ocker容器中運(yùn)行
當(dāng)時(shí)在window開發(fā)環(huán)境中發(fā)布后,dotnet xxx.dll可以正常運(yùn)行;但放入docker容器后就報(bào) *.*.deps.json not found 的錯(cuò)誤。后根據(jù)下面的文章解決了問題:https://www.cnblogs.com/mahidol/p/9064943.html
根據(jù)上述文章的結(jié)論,因?yàn)榘l(fā)布時(shí)認(rèn)為運(yùn)行的環(huán)境中包含必備的庫,所以僅發(fā)布了項(xiàng)目中的代碼與資源。
我的dockerfile用的基礎(chǔ)鏡像是:microsoft/dotnet:2.1.2-aspnetcore-runtime,因此asp.net core runtime是完整的,所以之前發(fā)布應(yīng)該缺少linux系統(tǒng)上必備的文件。因此重設(shè)發(fā)布選項(xiàng),如下圖:
現(xiàn)在發(fā)布的程序在docker容器中運(yùn)行的很好?。
2、發(fā)布的文件體積問題
按照一個(gè)問題的解決思路,新建一個(gè)asp.net core項(xiàng)目進(jìn)行發(fā)布設(shè)置,如下:
?
僅一個(gè)簡單示例的程序,發(fā)布出來就有90M。有點(diǎn)太恐怖了
總結(jié)
以上是生活随笔為你收集整理的asp.net core 发布到 docker 容器时文件体积过大及服务端口的配置疑问的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: .NetCore Cap 结合 Rabb
- 下一篇: asp.net ajax控件工具集 Au