Ne0inhk
25 Mar 2026 — 14 min read
超详细Docker安装教程(Ubuntu/CentOS/Windows11全平台)+ 实战避坑指南
前言:Docker作为容器化技术的核心工具,已成为后端开发、运维必备技能。本文基于实战文档,详细讲解Ubuntu(华为云20.04)、CentOS(8/9 Stream)、Windows11(GUI版)三大平台的Docker完整安装流程,包含依赖配置、版本验证、镜像源优化、目录修改及常见报错解决,新手可直接跟着操作,全程避坑,一次安装成功!
提示:本文所有操作均经过实战验证,适配文档中的操作步骤,同时补充新手易踩的细节,建议收藏备用,安装过程中遇到问题可直接跳至「常见报错」章节快速解决。
一、Docker基础认知(新手必看)
1.1 什么是Docker
Docker是一个开源的应用容器引擎,能将应用程序及其依赖打包到一个可移植的容器中,实现「一次构建,到处运行」。无需担心环境差异导致的运行失败,大幅提升开发、测试、部署效率。
1.2 支持的平台版本
Docker分为Server版本(用于服务器,无图形界面)和Desktop版本(用于桌面端,有图形界面),不同平台的支持情况如下(重点标注常用版本):
Server版本(常用Linux系统)
| Server版本 | 支持的CPU架构 | 推荐系统版本 |
|---|---|---|
| Ubuntu | x86_64/amd64、arm64/aarch64、arm(32-bit) | Ubuntu 20.04 LTS(本文重点)、22.04 LTS |
| CentOS | x86_64/amd64、arm64/aarch64 | CentOS 8 Stream、CentOS 9 Stream(CentOS7已停止更新) |
| 其他(Debian/Fedora等) | x86_64/amd64、arm64/aarch64等 | 对应系统最新稳定版 |
Desktop版本(桌面端,适合开发)
- Docker Desktop for Linux:适用于Linux桌面系统
- Docker Desktop for Mac:适用于macOS(Apple Silicon/Intel芯片)
- Docker Desktop for Windows:适用于Windows 10/11(本文重点讲解Windows11)
二、Ubuntu 20.04(华为云)Docker Server安装(重点)
本文以华为云Ubuntu 20.04 LTS为例,全程使用root用户操作(普通用户需在命令前加sudo),步骤清晰,新手可直接复制命令执行。
2.1 安装前准备(必做)
2.1.1 确认系统版本和CPU架构
首先确认系统版本符合要求,CPU架构支持Docker(主流x86_64均支持):
# 查看CPU架构(x86_64/amd64为支持,arm架构显示aarch64)uname -a # 查看Ubuntu系统版本(需为20.04 LTS及以上)cat /etc/*release*
正常输出示例(CPU为x86_64,系统为20.04 LTS):
# uname -a输出 Linux 139-159-150-152 5.4.0-100-generic #113-Ubuntu SMP Thu Feb 3 18:43:29 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux# cat /etc/*release*输出DISTRIB_ID=Ubuntu DISTRIB_RELEASE=20.04DISTRIB_CODENAME=focal DISTRIB_DESCRIPTION="Ubuntu 20.04.4 LTS"
2.1.2 卸载旧版本(新服务器可跳过)
如果服务器之前安装过Docker旧版本,需先卸载,避免冲突;新购买的云服务器无Docker,可直接跳过此步骤:
# 卸载旧版本软件sudoapt-get remove docker docker-engine docker.io containerd runc -y # 卸载历史版本(彻底清理)sudoapt-get purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras -y # 删除Docker相关目录(含镜像、容器等数据)sudorm -rf /var/lib/docker sudorm -rf /var/lib/containerd # (可选)删除自定义目录(文档中老师修改的目录,根据实际情况删除)sudorm -rf /data/var/lib/docker sudorm -rf /etc/docker/daemon.json
2.2 开始安装Docker
2.2.1 安装依赖工具
安装curl工具(用于下载Docker源配置),确保后续命令正常执行:
sudoaptinstallcurl -y
2.2.2 配置Docker官方下载源
默认Ubuntu的源可能下载速度慢,配置Docker官方源(稳定且更新及时),步骤如下:
# 创建gpg key目录(用于存放Docker官方密钥)sudomkdir -m 0755 -p /etc/apt/keyrings # 下载Docker官方GPG密钥并导入curl -fsSL https://download.docker.com/linux/ubuntu/gpg |sudo gpg --dearmor --yes -o /etc/apt/keyrings/docker.gpg # 配置Docker源(自动适配当前系统架构和版本)echo"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"|sudotee /etc/apt/sources.list.d/docker.list > /dev/null
2.2.3 安装Docker核心组件
更新apt源缓存,然后安装Docker CE(社区版,免费且常用)及相关插件:
# 更新apt源缓存sudoapt-get update # 安装Docker CE及插件(docker-compose-plugin用于容器编排)sudoapt-getinstall docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
安装过程中若提示「是否继续」,直接按回车即可,等待安装完成(约1-5分钟,取决于服务器网络)。
2.3 安装后配置(必做)
2.3.1 启动Docker服务并设置开机自启
Docker安装完成后,默认不会自动启动,需手动启动并设置开机自启,避免重启服务器后Docker失效:
# 重新加载系统配置(使Docker配置生效)sudo systemctl daemon-reload # 启动Docker服务sudo systemctl start docker# 设置开机自启(关键,重启服务器后自动启动Docker)sudo systemctl enabledocker# 查看Docker服务状态(确认是否启动成功)sudo systemctl status docker
正常输出中会显示「active (running)」,说明Docker服务启动成功。
2.3.2 验证Docker安装成功
通过查看Docker版本、运行hello-world镜像,验证安装是否成功(hello-world是Docker官方测试镜像,体积小,适合快速验证):
# 查看Docker版本(Client和Server均显示版本即正常)docker version # 运行hello-world镜像(首次运行会自动下载,验证Docker可正常拉取和运行镜像)sudodocker run hello-world
验证成功标志:
- docker version输出中,Client和Server均有版本信息(如本文文档中的23.0.1版本);
- 运行hello-world后,输出「Hello from Docker!」,并显示Docker运行的完整流程。
2.4 进阶配置(实战必备)
安装完成后,建议进行镜像源优化和Docker目录修改,提升使用体验,避免后续踩坑。
2.4.1 优化Docker镜像源(解决拉取镜像慢、失败问题)
默认Docker镜像源为国外的Docker Hub,国内访问速度慢,甚至会出现拉取失败,需配置国内镜像源。根据服务器所属厂商选择对应源:
# 编辑Docker配置文件(daemon.json) sudo vi /etc/docker/daemon.json # 按i进入编辑模式,粘贴对应配置,然后按Esc,输入:wq保存退出 # 1. 腾讯云服务器推荐配置 {"registry-mirrors":["https://mirror.ccs.tencentyun.com"]} # 2. 阿里云服务器推荐配置(阿里云企业海外代理仅对企业开放,推荐以下公开源) {"registry-mirrors":["https://docker.m.daocloud.io","https://dockerhub.timeweb.cloud","https://huecker.io"]} # 注意:中科大源(https://docker.mirrors.ustc.edu.cn)已不可使用,请勿配置!
配置完成后,重启Docker使镜像源生效:
sudo systemctl daemon-reload sudo systemctl restart docker
2.4.2 修改Docker默认目录(解决磁盘空间不足问题)
Docker默认安装目录为/var/lib/docker,后续下载的镜像、运行的容器都会存放在这里,若该目录磁盘空间较小,会导致后续无法下载大型镜像。建议修改为磁盘空间较大的目录(如本文文档中的/data目录):
# 1. 假设磁盘空间较大的目录为/data,创建Docker新目录mkdir -p /data/var/lib/docker # 2. 编辑Docker配置文件,添加data-root配置sudovi /etc/docker/daemon.json # 3. 粘贴以下配置(若已配置镜像源,可合并配置){"data-root":"/data/var/lib/docker", # 新的Docker目录"registry-mirrors":["https://mirror.ccs.tencentyun.com"]# 合并镜像源配置}# 4. 重新加载配置并重启Dockersudo systemctl daemon-reload sudo systemctl restart docker# 5. 查看Docker状态,确认配置生效sudo systemctl status docker
验证目录修改成功:执行「ll /data/var/lib/docker」,若显示Docker相关子目录(如containers、image等),说明修改成功。
三、CentOS 8/9 Stream Docker Server安装
CentOS系统安装流程与Ubuntu类似,重点差异在依赖安装和源配置,以下是完整步骤(以CentOS 8 Stream为例)。
3.1 安装前准备
3.1.1 确认系统版本和CPU架构
# 查看系统版本cat /etc/*release* # 查看CPU架构uname -a
注意:CentOS 7已停止更新,不推荐使用,优先选择CentOS 8 Stream或9 Stream。
3.1.2 卸载旧版本
# 卸载旧版本软件sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine -y # 彻底删除Docker相关目录sudo yum remove docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras -y sudorm -rf /var/lib/docker sudorm -rf /var/lib/containerd # (可选)删除自定义目录sudorm -rf /data/var/lib/docker sudorm -rf /etc/docker/daemon.json
3.2 开始安装Docker
3.2.1 配置Docker yum源
# 安装yum工具(用于配置yum源)sudo yum install -y yum-utils # 配置阿里云Docker yum源(国内速度快)sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3.2.2 安装Docker核心组件
# 安装Docker CE(最新稳定版)sudo yum install -y docker-ce # 若需安装指定版本,可执行:sudo yum install -y docker-ce-23.0.1 docker-ce-cli-23.0.1 containerd.io
3.3 安装后配置(与Ubuntu一致)
# 重新加载配置、启动Docker、设置开机自启sudo systemctl daemon-reload sudo systemctl start dockersudo systemctl enabledocker# 查看状态sudo systemctl status docker# 验证安装成功docker version sudodocker run hello-world
3.4 进阶配置(镜像源+目录修改)
与Ubuntu完全一致,参考本文「2.4 进阶配置」步骤,镜像源和目录修改的配置文件、命令完全通用,此处不再重复。
四、Windows11 Docker Desktop安装(GUI版,适合开发)
Windows11安装Docker Desktop需要开启虚拟化、安装WSL2(Windows Subsystem for Linux),步骤较多,重点注意虚拟化开启和WSL2配置。
4.1 安装前准备(必做,否则安装失败)
4.1.1 开启电脑虚拟化
Docker Desktop依赖虚拟化技术,需先开启电脑的虚拟化功能:
- 打开「任务管理器」→ 切换到「性能」标签 → 查看「虚拟化」状态,若显示「已启用」,则跳过此步骤;若显示「已禁用」,需继续操作。
- 开启虚拟化:按下Win+I,打开「设置」→ 搜索「启用或关闭Windows功能」→ 勾选「Windows虚拟机监控程序平台」「虚拟机平台」「适用于Linux的Windows子系统」→ 点击「确定」→ 重启电脑生效。
4.1.2 安装WSL2(Windows子系统)
Docker Desktop在Windows上运行依赖WSL2,需安装并配置WSL2:
- 以「管理员身份」打开PowerShell(右键开始菜单,选择「Windows PowerShell (管理员)」)。
- 执行命令,更新WSL到最新版本:
wsl --update - 设置WSL默认版本为2:
wsl --set-default-version 2 - 通过微软应用商店安装Ubuntu(推荐18.04.5 LTS或20.04 LTS),安装完成后启动Ubuntu,按照提示创建UNIX用户名和密码(无需与Windows用户名一致),启动成功即完成WSL2配置。
4.2 安装Docker Desktop
- 下载Docker Desktop安装包:访问Docker官方下载地址(www.docker.com/products/do… Desktop for Windows」安装包(Docker Desktop Installer.exe)。
- 安装Docker Desktop:双击安装包,按照提示下一步即可,安装过程中无需修改默认配置,等待安装完成后重启电脑。
- 启动Docker Desktop:重启电脑后,点击桌面「Docker Desktop」快捷方式,首次启动可能需要等待1-2分钟,启动成功后,桌面右下角会出现Docker图标(无报错即正常)。
4.3 验证安装成功
打开PowerShell,执行以下命令,验证Docker是否安装成功:
# 查看Docker版本docker version # 运行hello-world镜像,验证功能正常docker run hello-world
正常输出「Hello from Docker!」,说明安装成功。
4.4 配置镜像源(解决Windows拉取镜像慢问题)
Windows11 Docker Desktop配置镜像源步骤:
- 打开Docker Desktop,点击右上角「Settings」(设置)。
- 在左侧菜单中找到「Docker Engine」,编辑右侧配置文件,添加国内镜像源:
{ "experimental": false, "registry-mirrors": [ "https://docker.m.daocloud.io", "https://dockerhub.timeweb.cloud", "https://huecker.io" ] } - 点击「Apply & Restart」,等待Docker重启,镜像源配置生效。
五、常见报错及解决方案(实战避坑)
安装和使用Docker过程中,新手容易遇到各种报错,以下是本文文档中提到的常见报错及解决方案,覆盖90%的问题。
报错1:Docker服务启动失败(Job for docker.service failed)
报错原因
配置文件错误(如daemon.json格式错误)、旧版本残留、端口被占用。
解决方案
# 1. 查看Docker启动日志,定位具体错误 journalctl -eu docker# 2. 若为配置文件错误,删除错误配置,重新配置sudorm -rf /etc/docker/daemon.json # 3. 重新加载配置并重启Dockersudo systemctl daemon-reload sudo systemctl start docker
报错2:拉取镜像失败(request canceled while waiting for connection)
报错原因
网络受限、镜像源不可用、DNS解析失败、代理配置错误。
解决方案
- 检查网络连通性:ping 8.8.8.8,若不通,检查服务器网络/防火墙。
- 重新配置国内镜像源(参考本文「进阶配置」中的镜像源配置)。
- 若为DNS解析失败,修改系统DNS:
echo "nameserver 223.5.5.5" > /etc/resolv.conf echo "nameserver 8.8.8.8" >> /etc/resolv.conf
报错3:卸载Docker时提示「Unable to locate package docker-engine」
报错原因
服务器未安装过docker-engine版本,无需处理。
解决方案
直接跳过该步骤,执行后续的purge命令(彻底卸载)即可。
报错4:Windows11 Docker启动失败(WSL 2 installation is incomplete)
报错原因
WSL2未安装或未配置成功,Docker Desktop依赖WSL2运行。
解决方案
重新执行本文「4.1.2 安装WSL2」步骤,确保WSL2安装成功,且默认版本为2,重启电脑后再启动Docker。
六、总结
本文详细讲解了三大主流平台(Ubuntu 20.04、CentOS 8/9 Stream、Windows11)的Docker完整安装流程,包含安装前准备、核心安装步骤、安装后配置、进阶优化及常见报错解决,全程贴合实战文档,新手可直接跟着操作。
重点注意事项:
- 安装前务必确认系统版本和CPU架构符合要求,避免版本不兼容;
- 国内用户一定要配置国内镜像源,否则会出现拉取镜像慢、失败问题;
- Windows11安装必须开启虚拟化和WSL2,缺一不可;
- 修改配置文件后,必须重新加载配置并重启Docker,配置才会生效。
如果安装过程中遇到本文未覆盖的报错,可在评论区留言,我会及时回复解答。收藏本文,后续使用Docker时遇到问题可快速查阅!