Docker 安装与配置
本文件涵盖 Docker 在不同平台下的安装方式、镜像加速器配置及基础验证。
WSL 环境(Windows)
安装方式
在 Docker 官网下载 Windows 安装包后,使用 管理员 PowerShell 执行静默安装:
Start-Process 'Docker Desktop Installer.exe' ' install --installation-dir=D:\Docker --backend=wsl-2 --wsl-default-data-root=D:\DockerData'| 参数 | 含义 |
|---|---|
--installation-dir |
Docker 程序安装路径 |
--backend=wsl-2 |
使用 WSL 2 作为后端(推荐) |
--wsl-default-data-root |
镜像与容器数据存储路径(建议放非系统盘) |
WSL 内配置镜像加速器
方式一:Docker Desktop GUI
在 Settings → Docker Engine 中编辑 JSON:
{
"registry-mirrors": [
"https://docker.m.daocloud.io",
"https://docker.1panel.live",
"https://hub.rat.dev"
]
}方式二:命令行修改 daemon.json
sudo vi /etc/docker/daemon.json写入:
{
"registry-mirrors": [
"https://docker.m.daocloud.io",
"https://docker.1panel.live",
"https://hub.rat.dev"
]
}sudo service docker restart💡 最佳实践:镜像加速器列表应常维护,建议定期检查可用性。推荐使用
daoCloud、1Panel等稳定的国内镜像源。
Linux 环境
CentOS / RHEL
1. 更新系统并安装依赖
sudo yum update -y
sudo yum install -y yum-utils2. 添加阿里云镜像源
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo3. 强制替换官方地址(重要)
# 有时 repo 文件内部仍指向官方地址,这步确保所有链接都走阿里云
sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo4. 清除缓存并安装
sudo yum clean all
sudo yum makecache fast
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin💡 关于 docker-compose-plugin:这是 Docker Compose V2(
docker compose子命令),而非旧版docker-compose独立二进制。V2 已全面取代 V1,新项目应使用 V2。
5. 配置镜像源并启动
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://docker.m.daocloud.io",
"https://noohub.ru",
"https://huecker.io"
]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
sudo systemctl enable docker # 开机自启6. 验证安装
docker pull nginx
docker run --rm nginx echo "Docker is working!"Ubuntu / Debian
# 卸载旧版本
sudo apt-get remove docker docker-engine docker.io containerd runc
# 安装依赖
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg lsb-release
# 添加 Docker GPG 密钥
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
# 添加仓库
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 安装
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin安装后配置
非 root 用户运行 Docker
# 将当前用户加入 docker 组
sudo usermod -aG docker $USER
# 重新登录后生效(或执行 newgrp docker)
newgrp dockerdaemon.json 常用配置项
{
"registry-mirrors": ["https://docker.m.daocloud.io"],
"insecure-registries": ["my-registry.local:5000"],
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "3"
},
"storage-driver": "overlay2",
"data-root": "/data/docker",
"dns": ["8.8.8.8", "114.114.114.114"]
}| 配置项 | 说明 |
|---|---|
registry-mirrors |
镜像加速器地址列表 |
insecure-registries |
允许 HTTP(非 HTTPS)访问的私有仓库 |
log-driver |
日志驱动,默认 json-file |
log-opts.max-size |
单个日志文件最大大小 |
log-opts.max-file |
日志文件保留数量 |
storage-driver |
存储驱动,推荐 overlay2 |
data-root |
Docker 数据存储目录 |
dns |
容器 DNS 服务器 |
验证安装完整性
# 检查 Docker 版本
docker version
# 查看 Docker 系统信息
docker info
# 运行 hello-world 测试
docker run --rm hello-world卸载
# CentOS
sudo yum remove docker-ce docker-ce-cli containerd.io
sudo rm -rf /var/lib/docker /var/lib/containerd
# Ubuntu
sudo apt-get purge docker-ce docker-ce-cli containerd.io
sudo rm -rf /var/lib/docker /var/lib/containerd