Skip to content

Docker 部署 .NET 项目

在 Docker 环境下部署 .NET Web API 应用

第一步:创建 Dockerfile

在你的 .NET 6 项目根目录中创建一个名为 Dockerfile 的文件,内容如下:

dockerfile
# 设置构建环境为 .NET 6 SDK
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build-env

# 设置工作目录
WORKDIR /app

# 将项目文件复制到工作目录
COPY *.csproj ./

# 安装项目依赖项
RUN dotnet restore

# 将所有文件复制到工作目录
COPY . ./

# 构建项目
RUN dotnet publish -c Release -o out

# 设置运行环境为 .NET 6 Runtime
FROM mcr.microsoft.com/dotnet/aspnet:6.0

# 设置工作目录
WORKDIR /app

# 复制发布的项目文件到工作目录
COPY --from=build-env /app/out .

# 设置容器运行时的入口点
ENTRYPOINT ["dotnet", "image-name.dll"]

注意:将 image-name 替换为你的项目名称。

第二步:构建 Docker 镜像

在命令行中进入你的项目根目录,然后执行以下命令构建 Docker 镜像:

shell
docker build -t image-name .

第三步:运行 Docker 容器

执行以下命令来运行 Docker 容器:

shell
docker run -p 8000:80 image-name

这个命令会启动 Docker 容器,并将容器的 80 端口映射到主机的 8000 端口。

最后:访问部署的应用

打开你的浏览器,访问 http://localhost:8000 即可查看部署的 .NET 项目。


注意事项

  1. 项目名称:确保 Dockerfile 中的 image-name.dll 替换为实际的项目 DLL 文件名。
  2. 端口映射:根据需要调整端口映射,例如 docker run -p 5000:80 image-name
  3. 依赖项:确保所有依赖项已正确安装和配置。
  4. 日志:使用 docker logs <container_id> 查看容器日志,以便调试问题。

参考资料