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