一步一步实现 .NET 8 部署到 Docker

一、前言

本文仅针对操作系统为 CentOS 8 的环境下部署方法进行讲述。如有需要,后续将在其他文章中进行其他系统下的部署方式讲解。

二、准备工作

  1. 确保服务器已安装 docker。
    可以通过命令 docker -v 进行检查,如出现下图结果则表示已安装。
  2. 代码准备
    • 在代码项目名称上右键,依次选择 添加 - Docker 支持...,弹出容器基架选项界面,如下图:

    • 目标 OS 选择 Linux容器生成类型 选择 Dockerfile,点击 确定按钮

    • 此时项目中会增加一个名为 Dockerfile 的配置文件。

      内容大致如下:

    • 打开项目 目录 PropertieslaunchSettings.json 文件

      将会看到新增的如下内容:

    • 需要注意的是Dockerfile文件中的 EXPOSE 后方的端口需要与 Properties\launchSettings.json 文件中的 ASPNETCORE_HTTP_PORTS 指定端端口一致,该端口在部署到 docker 后,将作为容器端口使用。

三、上传项目源码到服务器

上传代码到服务器的方式有很多,下面仅列举手动上传和从 git 克隆代码。

  • 手动上传文件
    利用工具 WinSCP 工具连接服务器后,上传文件。
  • 从 git 克隆代码
    进入服务器相关目录下,利用 git 命令 git clone [url] 进行代码克隆到服务器。

四、开始部署

  1. Dockerfile 文件移动到父级目录中。

  2. 打开命令行窗口 ,利用 cd [路径] 进入代码文件所在目录。

  3. 输入命令 ls 查看目录下文件,如下所示能看到 Dockerfile 文件

  4. 创建镜像

    命令:docker build -t 镜像名称:版本号 .

    参数:** -t 或 --tag **:用于指定镜像的名称和标签

    示例:docker build -t swaggersimpledocker:1.0 .

    等待操作完成后,可通过命令 docker images 查看 docker 中已存在的镜像

  5. 创建容器

    命令:docker run --name=容器名称 -p主机(宿主)端口:容器端口 -d 镜像名称:1.0

    参数:--name :容器名称;-p :指定端口映射,格式为:主机(宿主)端口:容器端口;-d :后台运行容器,并返回容器ID

    示例:docker run --name=swaggersimple -p 8080:8080 -d swaggersimple:1.0

  6. 查看容器信息

    输入命令: docker ps -a ,可查看如下结果:

    说明:状态(STATUS) 为 Up 则表示容器状态为 运行中Exited 表示 已停止

  7. 检查接口是否可以正常访问

    输入命令:curl http://192.168.16.128:8080/api/Test/appinfo查看是否存在返回结果。

结束语

docker 容器部署已作为当前主流部署方式,欢迎大家一起交流学习。 QQ:2289480980

相关推荐
BTU_YC6 小时前
Docker Compose 部署 DozerDB 完整教程
运维·docker·容器
spencer_tseng9 小时前
[kylin & linux] install docker
linux·docker·kylin
airobotcn10 小时前
智能巡检平台容器化部署:Docker+K8s在工业边缘的实践
人工智能·docker·容器·kubernetes·机器人·自动化
Kurisu_红莉栖14 小时前
关于docker的使用心得
运维·docker·容器
Albart57517 小时前
Docker Desktop最新版安装踩坑全记录(Windows_Mac_Linux)【2026 4.74.0 终版】
linux·windows·macos·docker·环境搭建·踩坑记录
叶 落18 小时前
Docker-Compose 安装 Milvus
docker·容器·milvus
江湖有缘18 小时前
3款开源粘贴板工具整理合集,可Docker一键部署!
docker·容器·开源
深念Y19 小时前
Windows → WSL2 全面迁移:工具链、Docker、OpenCode
linux·运维·windows·docker·容器·环境·wsl
猫吃了源码1 天前
k9s简介和安装
linux·docker·kubernetes
云原生指北2 天前
Docker Sandboxes 上手:从安装到第一次跑 Agent
运维·docker·容器