You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux容器中dotnet publish --self-contained参数及.NET Core两种部署方式对比

.NET Core 两种Linux容器部署方式的优势对比

补充参数说明:--self-contained [true|false]参数会将.NET运行时与应用一同发布,因此目标机器无需预先安装运行时。如果指定了运行时标识符且项目为可执行项目(非类库项目),默认值为true。

方式1:使用预装.NET Core框架的Linux基础镜像部署的优势

  • 镜像体积更小:仅需打包应用本身的代码和依赖,复用基础镜像中已有的.NET运行时,最终生成的镜像比自包含部署小50%以上,镜像拉取、分发、启动速度都更快。
  • 运行时维护成本更低:.NET运行时的安全补丁、版本更新只需要升级基础镜像即可,所有使用该镜像的应用无需单独重新发布,批量管理场景下效率更高。
  • 发布配置更简单:不需要指定运行时标识符(RID),直接执行dotnet publish即可完成打包,跨架构适配时的调整成本更低。

方式2:使用普通Linux基础镜像+dotnet publish --self-contained部署的优势

  • 基础镜像选择自由度高:无需依赖微软官方提供的.NET预安装镜像,可以选择任意符合业务要求的Linux基础镜像,比如极简的Alpine镜像、企业内部定制的合规安全镜像。
  • 运行时兼容性更可控:应用绑定固定版本的.NET运行时,不会因为基础镜像的运行时版本迭代出现意料之外的兼容性问题,运行环境完全由发布包保证。
  • 环境适配性更强:容器内不需要预先安装任何.NET相关组件,哪怕是没有.NET生态的极简Linux环境也可以直接运行,适合对基础环境管控严格、不允许随意安装公共运行时的场景。

内容的提问来源于stack exchange,提问作者SharpCoder

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 02:45:08