SuperAPI AI 工具集

containerize-aspnet-framework

部署与运维

查看项目

更新于 10-15 21:52

技能介绍

用途:该技能面向 ASP.NET(.NET Framework,非 .NET Core)项目,目标是完成在 Windows Docker 容器中运行所需的改动,包括生成 Dockerfile、.dockerignore,并调整应用配置。

主要能力:从 .csproj 的 TargetFrameworkVersion 判断 .NET Framework 版本,据此选择 Windows Server Core 或 Full 及 2016/2019/2022 等版本的基础镜像;创建多阶段 Dockerfile(构建阶段用 mcr.microsoft.com/dotnet/framework/sdk,运行阶段用 mcr.microsoft.com/dotnet/framework/aspnet);处理 GAC 程序集、MSI、COM 组件、注册表、环境变量、Windows 角色与功能、文件复制等依赖;生成 LogMonitorConfig.json 并下载 LogMonitor.exe,以 ServiceMonitor.exe 监控 IIS 服务;按需配置健康检查与 .dockerignore。

使用方式:先填写容器化设置(项目路径、Windows Server SKU 与版本、端口、运行账户、IIS 设置、构建步骤、依赖、系统配置、文件系统、健康检查等),未指定项使用默认值。执行时需确保已安装 NuGet 包 Microsoft.Configuration.ConfigurationBuilders.Environment,否则需手动安装;随后修改 web.config 添加 configBuilders 以从环境变量读取应用设置与连接字符串,创建 Dockerfile 与 .dockerignore,并用 docker build -t aspnet-app:latest . 验证构建。

适用场景:需要把传统 ASP.NET .NET Framework 应用迁移到 Windows 容器的场景。

限制:不涉及基础设施搭建,不做容器化之外的代码改动;默认使用 Windows Server Core 镜像,除非明确要求 Full;未提供具体收费、价格或平台支持信息。