> 技术文档 > Docker部署配置全流程(超详细——Windows和Linux)

Docker部署配置全流程(超详细——Windows和Linux)


文章目录

  • 前言
  • 一、Docker 简介
    • 1.核心特点
    • 2.主要应用场景
    • 3.优势
  • 二、Linux
    • 1.安装前准备
      • 1.1 系统要求检查
      • 1.2 卸载旧版本 Docker
      • 1.3 安装基础依赖
    • 2.Docker 安装流程
      • 2.1 配置国内镜像源(阿里云)
      • 2.2 安装 Docker 引擎
      • 2.3 启动 Docker 服务
      • 2.4 配置镜像加速器
        • 2.4.1 方案一:临时加速(单次有效)
        • 2.4.2 方案二:永久配置(推荐)
        • 2.4.3 验证配置
      • 2.5 用户权限配置(免sudo)
      • 2.6 内核参数优化(可选)
      • 2.7 存储驱动配置(可选)
        • 2.7.1 检查存储驱动
        • 2.7.2 配置Overlay2存储
      • 2.8 防火墙配置(可选)
        • 2.8.1 开放Docker端口
        • 2.8.2 Docker与Firewalld集成
    • 3.故障排查指南
      • 3.1 常见问题解决方案
        • 3.1.1 问题1:容器无法访问外网
        • 3.1.2 问题2:存储空间不足
        • 3.1.3 问题3:镜像拉取失败
          • 3.1.3.1 DNS
          • 3.1.3.2 镜像源
      • 3.2 日志分析命令
  • 三、Windows
    • 1.安装前的准备工作
    • 2.下载和安装(Docker Desktop)
      • 2.1 下载
      • 2.2 安装
      • 2.3 验证安装
    • 3.配置Docker
      • 3.1 配置镜像加速器(推荐)
      • 3.2 配置WSL 2集成
    • 4.常见问题与解决方案
      • 4.1 虚拟化未开启
      • 4.2 Hyper-V冲突
      • 4.3 Docker Desktop无法启动
      • 4.4 Docker 镜像拉取失败

前言

一、Docker 简介

Docker 是一个开源的容器化平台,用于开发、部署和运行应用程序。它通过容器技术将应用及其依赖项打包到一个可移植的标准化单元中,确保应用在不同环境中高效运行

1.核心特点

特点 说明 轻量级 容器共享宿主机的操作系统内核,相比传统虚拟机更节省资源 可移植性 容器可在任何支持 Docker 的环境中运行,确保一致性 隔离性 每个容器独立运行,互不干扰,提高安全性 快速部署 秒级启动和停止,适合动态扩展和微服务架构 版本控制 支持镜像分层存储和版本管理,便于回滚和更新

2.主要应用场景

场景 说明 微服务架构 将单体应用拆分为多个独立容器,提高可维护性 持续集成/持续部署 (CI/CD) 自动化构建、测试和发布流程 开发环境标准化 避免“在我机器上能运行”的问题,统一开发、测试和生产环境 云原生应用 与 Kubernetes 等编排工具结合,实现弹性伸缩和高可用 快速实验与测试 快速创建一次性环境,测试新技术或配置

3.优势

优势 说明 资源高效 相比虚拟机,容器占用更少 CPU 和内存 跨平台支持 可在 Linux、Windows 和 macOS 上运行 丰富的生态系统 提供 Docker Hub 等镜像仓库,方便共享和获取预构建镜像 简化运维 通过 Dockerfile 定义环境,减少手动配置错误

二、Linux

1.安装前准备

1.1 系统要求检查

# ubuntu# 检查内核版本(需3.10+)uname -r# 检查系统版本lsb_release -a# 输出示例:Ubuntu 22.04 LTS# centos# 检查内核版本(需3.10+)uname -r# 输出示例:3.10.0-1160.el7.x86_64# 检查系统版本cat /etc/redhat-release# 输出示例:CentOS Linux release 7.9.2009 (Core)

Docker部署配置全流程(超详细——Windows和Linux)

1.2 卸载旧版本 Docker

如果之前安装过Dokcer的,需要先卸载旧的版本

# ubuntusudo apt-get remove docker docker-engine docker.io containerd runc# centossudo yum remove -y docker \\  docker-client \\  docker-client-latest \\  docker-common \\  docker-latest \\  docker-latest-logrotate \\  docker-logrotate \\  docker-engine

Docker部署配置全流程(超详细——Windows和Linux)

1.3 安装基础依赖

# ubuntusudo apt-get updatesudo apt-get install -y ca-certificates curl gnupg lsb-release# centossudo yum install -y yum-utils device-mapper-persistent-data lvm2

Docker部署配置全流程(超详细——Windows和Linux)
Docker部署配置全流程(超详细——Windows和Linux)

2.Docker 安装流程

2.1 配置国内镜像源(阿里云)

# ubuntu# 添加阿里云GPG密钥curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg# 设置仓库echo \"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable\" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null# Ubuntu更新APT缓存sudo apt-get update# centos# 设置阿里云Docker仓库sudo yum-config-manager --add-repo \\http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo# 更新yum缓存sudo yum makecache fast

Docker部署配置全流程(超详细——Windows和Linux)

2.2 安装 Docker 引擎

# ubuntusudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin# centos# 安装最新版本sudo yum install -y docker-ce docker-ce-cli containerd.io

Docker部署配置全流程(超详细——Windows和Linux)
Docker部署配置全流程(超详细——Windows和Linux)

2.3 启动 Docker 服务

# 启动服务sudo systemctl start docker# 设置开机自启sudo systemctl enable docker# 验证服务状态sudo systemctl status docker

Docker部署配置全流程(超详细——Windows和Linux)

2.4 配置镜像加速器

2.4.1 方案一:临时加速(单次有效)
#通用格式(镜像地址不加https://)sudo docker pull [镜像源]/镜像名:版本号 #使用示例 sudo docker pull docker.m.daocloud.io/hello-world:latest 

Docker部署配置全流程(超详细——Windows和Linux)

2.4.2 方案二:永久配置(推荐)
#创建配置文件目录(已存在可跳过)sudo mkdir -p /etc/docker #通过命令行生成配置(推荐新手)sudo tee /etc/docker/daemon.json <<-\'EOF\'{ \"registry-mirrors\": [ \"https://docker.m.daocloud.io\", \"https://docker.imgdb.de\", \"https://docker-0.unsee.tech\", \"https://docker.hlmirror.com\" ]}EOF#应用配置(必须执行)sudo systemctl daemon-reload sudo systemctl restart docker 

Docker部署配置全流程(超详细——Windows和Linux)

2.4.3 验证配置
#测试基础镜像 sudo docker pull hello-world #查看已用镜像源 docker info | grep Mirrors -A 3 

Docker部署配置全流程(超详细——Windows和Linux)

Docker部署配置全流程(超详细——Windows和Linux)

2.5 用户权限配置(免sudo)

# 添加docker用户组sudo groupadd docker# 将当前用户加入docker组sudo usermod -aG docker $USER# 激活组权限变更newgrp docker# 验证权限docker run hello-world

Docker部署配置全流程(超详细——Windows和Linux)

2.6 内核参数优化(可选)

# 编辑sysctl配置文件sudo tee /etc/sysctl.d/docker.conf <<-\'EOF\'net.ipv4.ip_forward=1net.bridge.bridge-nf-call-iptables=1net.bridge.bridge-nf-call-ip6tables=1vm.max_map_count=262144fs.may_detach_mounts=1EOF# 加载配置sudo sysctl --system

Docker部署配置全流程(超详细——Windows和Linux)
Docker部署配置全流程(超详细——Windows和Linux)

2.7 存储驱动配置(可选)

2.7.1 检查存储驱动
docker info | grep \"Storage Driver\"# 推荐输出:overlay2

Docker部署配置全流程(超详细——Windows和Linux)

2.7.2 配置Overlay2存储
# 停止Docker服务sudo systemctl stop docker# 备份原有数据sudo mv /var/lib/docker /var/lib/docker.bak# 创建新存储目录sudo mkdir -p /var/lib/docker# 修改存储驱动配置sudo tee /etc/docker/daemon.json <<-\'EOF\'{ \"storage-driver\": \"overlay2\", \"storage-opts\": [ \"overlay2.override_kernel_check=true\" ]}EOF# 重启服务sudo systemctl start docker

2.8 防火墙配置(可选)

2.8.1 开放Docker端口
# 开放2375端口(管理端口)sudo firewall-cmd --zone=public --add-port=2375/tcp --permanent# 开放常用应用端口sudo firewall-cmd --zone=public --add-port=80/tcp --permanentsudo firewall-cmd --zone=public --add-port=443/tcp --permanentsudo firewall-cmd --zone=public --add-port=3306/tcp --permanent# 重新加载防火墙sudo firewall-cmd --reload
2.8.2 Docker与Firewalld集成
# 允许Docker操作防火墙sudo firewall-cmd --permanent --zone=trusted --add-interface=docker0sudo firewall-cmd --permanent --zone=trusted --add-port=2376/tcpsudo firewall-cmd --reload

3.故障排查指南

3.1 常见问题解决方案

3.1.1 问题1:容器无法访问外网
# 解决方案:sudo firewall-cmd --zone=public --add-masquerade --permanentsudo firewall-cmd --reloadsudo systemctl restart docker

Docker部署配置全流程(超详细——Windows和Linux)

3.1.2 问题2:存储空间不足
# 查看Docker磁盘使用docker system df# 清理无用资源docker system prune -a -f --volumes

Docker部署配置全流程(超详细——Windows和Linux)

3.1.3 问题3:镜像拉取失败

Docker部署配置全流程(超详细——Windows和Linux)

3.1.3.1 DNS
# 检查DNS配置sudo cat /etc/resolv.conf# 如果DNS没有配置,执行下面指令添加sudo tee /etc/resolv.conf <<< \"nameserver 8.8.8.8\"
3.1.3.2 镜像源
# 临时使用其他镜像源 或者直接配置永久源,参照上面的 2.4.2 方案二:永久配置sudo docker pull docker.m.daocloud.io/hello-world:latest 

3.2 日志分析命令

# 查看Docker服务日志journalctl -u docker.service --since \"2025-08-01\" --no-pager# 查看容器日志docker logs -f [容器ID] --tail 100

三、Windows

1.安装前的准备工作

  • 操作系统:Windows 10/11(专业版、企业版或家庭版支持WSL 2)

  • 内存:至少4GB RAM

  • 磁盘空间:至少20GB可用空间

  • 虚拟化

    • BIOS/UEFI中启用虚拟化

    • 任务管理器 > 性能 > CPU > 虚拟化状态:“已启用”
      Docker部署配置全流程(超详细——Windows和Linux)

  • 启用Hyper-V和WSL 2

    • Docker Desktop依赖Hyper-V和WSL 2(Windows Subsystem for Linux)
      • 打开“控制面板” > “程序” > “启用或关闭Windows功能”
      • 勾选 Hyper-V、Windows Subsystem for Linux 和 虚拟机平台
      • 重启电脑
        Docker部署配置全流程(超详细——Windows和Linux)
        Docker部署配置全流程(超详细——Windows和Linux)
  • 安装WSL 2

    • 检查WSL版本

      wsl --status

      Docker部署配置全流程(超详细——Windows和Linux)

    • 安装WSL

      wsl.exe --install

      Docker部署配置全流程(超详细——Windows和Linux)

    • 设置默认版本为WSL 2

      wsl --set-default-version 2

      Docker部署配置全流程(超详细——Windows和Linux)

2.下载和安装(Docker Desktop)

2.1 下载

  • 网址:官方下载
    Docker部署配置全流程(超详细——Windows和Linux)

2.2 安装

  • 双击安装包,进入安装向导
  • 安装选项
    • 勾选 Use WSL 2 instead of Hyper-V(推荐)
    • 勾选 Add Docker Desktop to PATH
    • 完成安装,点击 Close and restart 重启电脑

最新安装包默认包含两项
Docker部署配置全流程(超详细——Windows和Linux)

2.3 验证安装

  • 启动Docker Desktop

    • 安装完成后,系统托盘会显示鲸鱼图标(表明Docker正在运行)
      Docker部署配置全流程(超详细——Windows和Linux)
  • 检查版本

    docker --versiondocker-compose --version

    Docker部署配置全流程(超详细——Windows和Linux)

  • 测试运行:

    docker run hello-world
    • 如果输出 Hello from Docker! 表示安装成功

3.配置Docker

3.1 配置镜像加速器(推荐)

Docker默认从Docker Hub拉取镜像,国内用户可配置其他镜像源提升速度

  • 步骤:
    • 打开 Docker Desktop > Settings > Docker Engine
      Docker部署配置全流程(超详细——Windows和Linux)

    • 编辑 daemon.json 文件,添加镜像源(推荐地址:最新镜像源参考)

      \"registry-mirrors\": [\"https://docker.m.daocloud.io\",\"https://hub-mirror.c.163.com\"]
    • 点击 Apply
      Docker部署配置全流程(超详细——Windows和Linux)

3.2 配置WSL 2集成

  • 启用WSL 2集成:
    • Docker Desktop > Settings > Resources > WSL Integration
    • 启用默认WSL发行版(如Ubuntu)
    • 可添加其他WSL发行版(如Debian、Kali)
      Docker部署配置全流程(超详细——Windows和Linux)

4.常见问题与解决方案

4.1 虚拟化未开启

  • 错误提示:WSL 2 requires virtualization to be enabled in the BIOS
  • 解决方法
    • 进入BIOS(开机时按Del/F2/F12)开启虚拟化功能(Intel VT-x/AMD-V)
    • 检查任务管理器 > 性能 > CPU > 是否显示“虚拟化:已启用”

4.2 Hyper-V冲突

  • 错误提示:Cannot connect to the Docker daemon at unix:///var/run/docker.sock
  • 解决方法
    • 关闭其他虚拟机软件(如VirtualBox)。
    • 通过PowerShell禁用Hyper-V
      bcdedit /set hypervisorlaunchtype offRestart-Computer -Force

4.3 Docker Desktop无法启动

  • 解决方法
    • 重置WSL 2
      wsl --shutdown
    • 重新安装WSL 2内核

4.4 Docker 镜像拉取失败

Docker部署配置全流程(超详细——Windows和Linux)

  • 解决方法
    • 配置镜像加速器

      \"registry-mirrors\": [\"https://docker.m.daocloud.io\",\"https://hub-mirror.c.163.com\"]

      Docker部署配置全流程(超详细——Windows和Linux)

    • 修改 DNS 设置

      \"dns\": [\"8.8.8.8\", \"114.114.114.114\"]

      Docker部署配置全流程(超详细——Windows和Linux)

股市入门