Docker安装与配置 #
系统要求 #
Linux系统要求 #
| 要求 | 说明 |
|---|---|
| 内核版本 | 3.10及以上 |
| 架构 | x86_64/amd64, arm64, s390x |
| 发行版 | Ubuntu, Debian, CentOS, Fedora等 |
macOS系统要求 #
| 要求 | 说明 |
|---|---|
| macOS版本 | 10.15 (Catalina)及以上 |
| 芯片 | Intel芯片或Apple Silicon (M1/M2) |
| 内存 | 至少4GB |
Windows系统要求 #
| 要求 | 说明 |
|---|---|
| Windows版本 | Windows 10/11 64位 |
| WSL2 | 需要启用WSL2 |
| Hyper-V | 需要启用Hyper-V |
Linux安装Docker #
Ubuntu安装 #
bash
# 更新软件包索引
sudo apt-get update
# 安装依赖包
sudo apt-get install \
ca-certificates \
curl \
gnupg \
lsb-release
# 添加Docker官方GPG密钥
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/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://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 安装Docker Engine
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
# 验证安装
sudo docker run hello-world
CentOS安装 #
bash
# 安装yum-utils
sudo yum install -y yum-utils
# 添加Docker仓库
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
# 安装Docker
sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
# 启动Docker
sudo systemctl start docker
sudo systemctl enable docker
# 验证安装
sudo docker run hello-world
使用安装脚本 #
bash
# 下载安装脚本
curl -fsSL https://get.docker.com -o get-docker.sh
# 执行安装
sudo sh get-docker.sh
# 将当前用户添加到docker组
sudo usermod -aG docker $USER
# 重新登录或执行
newgrp docker
macOS安装Docker #
Docker Desktop for Mac #
-
下载Docker Desktop
- 访问 https://www.docker.com/products/docker-desktop
- 根据芯片类型选择Intel或Apple Silicon版本
-
安装步骤
bash# 打开下载的dmg文件 open Docker.dmg # 将Docker拖入Applications文件夹 # 启动Docker Desktop open /Applications/Docker.app -
验证安装
bashdocker --version docker run hello-world
配置Docker Desktop #
json
// Docker Desktop设置
{
"cpu-count": 4,
"memory": 8192,
"swap": 2048,
"disk-size": 65536
}
Windows安装Docker #
启用WSL2 #
powershell
# 启用WSL
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
# 启用虚拟机平台
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
# 重启系统后,设置WSL2为默认版本
wsl --set-default-version 2
# 安装Linux发行版
wsl --install -d Ubuntu
安装Docker Desktop #
- 下载Docker Desktop for Windows
- 运行安装程序,选择使用WSL2
- 完成安装后重启系统
- 启动Docker Desktop
验证安装 #
powershell
# 检查Docker版本
docker --version
# 检查WSL2集成
wsl -l -v
# 运行测试容器
docker run hello-world
Docker配置 #
配置镜像加速 #
bash
# 编辑daemon.json
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://mirror.ccs.tencentyun.com",
"https://docker.mirrors.ustc.edu.cn"
]
}
EOF
# 重启Docker服务
sudo systemctl daemon-reload
sudo systemctl restart docker
配置存储驱动 #
json
// /etc/docker/daemon.json
{
"storage-driver": "overlay2",
"data-root": "/var/lib/docker"
}
配置日志驱动 #
json
// /etc/docker/daemon.json
{
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "3"
}
}
配置网络 #
json
// /etc/docker/daemon.json
{
"bip": "172.17.0.1/16",
"default-address-pools": [
{
"base": "172.17.0.0/16",
"size": 24
}
]
}
完整配置示例 #
json
{
"registry-mirrors": [
"https://mirror.ccs.tencentyun.com",
"https://docker.mirrors.ustc.edu.cn"
],
"storage-driver": "overlay2",
"data-root": "/var/lib/docker",
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "3"
},
"bip": "172.17.0.1/16",
"live-restore": true,
"userland-proxy": false
}
Docker服务管理 #
Linux服务管理 #
bash
# 启动Docker服务
sudo systemctl start docker
# 停止Docker服务
sudo systemctl stop docker
# 重启Docker服务
sudo systemctl restart docker
# 查看Docker状态
sudo systemctl status docker
# 设置开机自启
sudo systemctl enable docker
# 取消开机自启
sudo systemctl disable docker
查看Docker信息 #
bash
# 查看Docker版本
docker version
# 查看Docker详细信息
docker info
# 查看Docker系统信息
docker system info
常见问题解决 #
权限问题 #
bash
# 将用户添加到docker组
sudo usermod -aG docker $USER
# 重新登录或执行
newgrp docker
网络问题 #
bash
# 检查Docker网络
docker network ls
# 重建Docker网络
sudo systemctl restart docker
存储问题 #
bash
# 清理未使用的资源
docker system prune -a
# 查看磁盘使用
docker system df
WSL2问题(Windows) #
powershell
# 重置WSL
wsl --shutdown
# 更新WSL内核
wsl --update
小结 #
本节介绍了Docker在Linux、macOS和Windows三个平台上的安装方法,以及常用的配置选项。正确安装和配置Docker是使用容器化技术的基础。
下一步 #
接下来,让我们学习 第一个容器,运行你的第一个Docker容器。