debian安装docker
适用系统:本教程适用于 64 位 Debian 12(bookworm)和 Debian 11(bullseye)系统,其他发行版请参考官方文档。
1. 更新系统并安装依赖包
首先要更新系统包列表并安装必要的依赖包,确保系统处于最新状态
更新软件包列表:
sudo apt update
安装必要的依赖工具:
sudo apt install -y ca-certificates curl gnupg lsb-release
提示:
lsb-release包用于获取系统版本信息,在后续步骤中会用到。
2. 添加 Docker 官方 GPG 密钥
为确保下载包的安全性,需要添加 Docker 的官方 GPG 密钥
创建密钥存储目录:
sudo install -m 0755 -d /etc/apt/keyrings
下载并安装 Docker GPG 密钥:
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
设置密钥文件权限:
sudo chmod a+r /etc/apt/keyrings/docker.gpg
安全说明:GPG 密钥用于验证 Docker 包的完整性和来源,确保安装的软件未被篡改。
3. 添加 Docker 仓库
配置 Docker 的 APT 仓库,以便通过包管理器安装和更新
添加 Docker 官方仓库:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
说明:此命令会自动检测系统架构和版本代号,确保添加正确的仓库地址。
4. 安装 Docker Engine
更新包索引并安装 Docker 及其相关组件
更新软件包索引(包含新添加的 Docker 仓库):
sudo apt update
安装 Docker Engine 及相关组件:
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
5. 验证安装
安装完成后,通过运行测试容器验证 Docker 是否正常工作
运行 hello-world 测试容器:
sudo docker run hello-world
如果看到 "Hello from Docker!" 消息,说明安装成功!
至此,Docker Engine 已成功安装并运行,以下步骤为可选配置,根据实际需求选择执行。
6. 配置非 root 用户使用 Docker
为避免每次使用 Docker 命令都需要 sudo,可以将当前用户添加到 docker 用户组
将当前用户添加到 docker 用户组:
sudo usermod -aG docker $USER
重要:需要重新登录或执行以下命令使组权限生效
刷新用户组权限:
newgrp docker
验证用户组配置是否成功:
groups
再次验证 Docker 命令无需 sudo:
docker run hello-world
7. 卸载 Docker
停止 Docker 相关服务:
sudo systemctl stop docker docker.socket containerd
卸载所有 Docker 相关软件包:
sudo apt purge -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
删除 Docker 数据目录:
sudo rm -rf /var/lib/docker
删除 containerd 数据目录:
sudo rm -rf /var/lib/containerd
删除 Docker 配置目录:
sudo rm -rf /etc/docker
删除 Docker 仓库配置文件:
sudo rm /etc/apt/sources.list.d/docker.list
删除 Docker GPG 密钥:
sudo rm /etc/apt/keyrings/docker.gpg
清理未使用的依赖包:
sudo apt autoremove -y
清理下载的软件包缓存:
sudo apt clean
温馨提示:卸载操作会永久删除所有容器、镜像、卷和网络配置。