在 Debian 系统上初次安装 Docker 的指南
于 发布于分类: 默认 | 阅:36
对于刚接触容器技术的新手来说,在 Debian 系统上正确安装 Docker 是入门的关键第一步。本教程将以通俗易懂的语言,带领你完成从系统准备到 Docker 安装、验证及基础使用的全流程,即使没有丰富的 Linux 操作经验,也能轻松跟随操作。
一、安装前的准备工作
在正式安装 Docker 前,需要完成一些基础准备操作,确保系统环境满足安装要求,避免后续出现兼容性问题。
1. 确认 Debian 系统版本
Docker 对 Debian 系统版本有一定要求,建议使用Debian 10(Buster)及以上版本(包括 Debian 11 Bullseye、Debian 12 Bookworm)。
通过以下命令查看当前系统版本,确认是否符合要求:
lsb\_release -a若输出结果中 “Release” 字段显示为 10、11 或 12,说明系统版本达标;若版本过低,建议先升级系统或更换更高版本的 Debian 镜像。
2. 更新系统软件包
为保证系统软件包处于最新状态,减少安装冲突,执行以下命令更新软件包索引并升级已安装的软件:
sudo apt update && sudo apt upgrade -yapt update:从软件源服务器获取最新的软件包列表;apt upgrade -y:自动升级所有可更新的软件包,-y参数表示默认确认所有提示,无需手动输入 “y” 确认。
3. 安装必要依赖包
Docker 安装过程中需要依赖一些工具包(如证书、软件源管理工具等),通过以下命令一次性安装:
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common各依赖包的作用:
apt-transport-https:允许 APT 通过 HTTPS 协议获取软件包;ca-certificates:提供 SSL 证书,确保与软件源服务器的安全连接;curl:用于从网络下载文件(后续将用它获取 Docker 官方 GPG 密钥);software-properties-common:提供管理软件源的工具(如add-apt-repository)。
二、正式安装 Docker
Docker 官方为 Debian 提供了专用的软件源,通过官方源安装能确保获取最新、最稳定的版本,避免第三方源可能存在的安全风险。
1. 添加 Docker 官方 GPG 密钥
GPG 密钥用于验证 Docker 软件包的完整性和安全性,执行以下命令下载并添加官方密钥:
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpgcurl -fsSL:静默下载 Docker 官方 GPG 密钥(-f忽略错误,-s静默模式,-L自动跟随重定向);gpg --dearmor:将下载的 ASCII 格式密钥转换为二进制格式,便于系统识别;-o /usr/share/keyrings/docker-archive-keyring.gpg:将转换后的密钥保存到指定路径。
2. 添加 Docker 官方软件源
根据当前 Debian 系统的 “代号”(如 Debian 12 为 Bookworm),添加对应的官方软件源。首先通过以下命令获取系统代号:
CODENAME=\$(lsb\_release -c | awk '{print \$2}')然后执行命令添加软件源:
echo "deb \[arch=\$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian \$CODENAME stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/nullarch=$(dpkg --print-architecture):自动识别系统架构(如 amd64、arm64);signed-by:指定用于验证软件包的 GPG 密钥路径;stable:表示使用 Docker 的稳定版本仓库(新手推荐优先使用稳定版);tee /etc/apt/sources.list.d/docker.list:将软件源信息写入专门的 Docker 源文件,避免与系统默认源混淆。
3. 安装 Docker Engine
添加完官方源后,先更新软件包索引,再安装 Docker 核心组件(Docker Engine、Docker CLI 等):
\# 更新软件包索引(让系统识别新添加的Docker源)
sudo apt update
\# 安装Docker Engine
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin各组件说明:
docker-ce:Docker 社区版引擎(核心运行组件);docker-ce-cli:Docker 命令行工具(用于通过命令操作 Docker);containerd.io:容器运行时(负责管理容器的生命周期);docker-buildx-plugin:Docker 构建增强插件(支持多架构镜像构建);docker-compose-plugin:Docker Compose 插件(用于管理多容器应用)。
安装过程中,系统会自动处理依赖关系,无需额外操作,等待终端显示 “Setting up...” 完成即可。
三、验证 Docker 安装是否成功
安装完成后,需要通过简单操作验证 Docker 是否正常运行,避免后续使用时出现问题。
1. 检查 Docker 服务状态
Docker 安装后会自动启动服务,通过以下命令查看服务运行状态:
sudo systemctl status docker若输出结果中显示 “active (running)”(绿色字体),说明 Docker 服务已正常启动;若显示 “inactive”,可执行sudo systemctl start docker手动启动服务。
2. 运行测试容器
Docker 官方提供了一个轻量级的 “hello-world” 镜像,通过运行该镜像可验证 Docker 是否能正常拉取镜像并创建容器:
sudo docker run hello-world如果运行成功,终端会输出类似以下的信息(关键信息已标注):
Hello from Docker!
This message shows that your installation appears to be working correctly.
...(后续为详细说明,无需关注)- 该命令的作用:Docker 会先检查本地是否有 “hello-world” 镜像,若没有则自动从官方仓库(Docker Hub)拉取,然后创建并运行一个容器,容器输出 “Hello from Docker!” 后自动停止。
四、新手必备:配置非 root 用户操作 Docker(可选但推荐)
默认情况下,只有root用户或属于docker组的用户才能操作 Docker。为了避免每次使用 Docker 都输入sudo,建议将当前用户添加到docker组:
1. 添加 docker 用户组(若不存在)
大部分情况下,安装 Docker 时会自动创建docker组,可通过以下命令确认:
getent group docker若输出类似 “docker:x:998:”,说明组已存在;若无输出,执行以下命令创建:
sudo groupadd docker2. 将当前用户添加到 docker 组
执行以下命令将当前登录用户(替换为你的用户名,若不知道用户名可执行whoami查看)添加到docker组:
sudo usermod -aG docker \$USER-aG:-a表示 “追加”,-G表示 “指定用户组”,即把用户追加到docker组中。
3. 生效用户组配置
用户组变更后,需要重新登录系统或执行以下命令让配置立即生效(无需重启电脑):
newgrp docker生效后,可通过以下命令验证:
docker run hello-world若无需sudo就能正常输出 “Hello from Docker!”,说明配置成功。
五、Docker 基础命令(新手入门)
安装完成后,掌握几个基础命令能帮助你快速上手:
| 命令 | 作用 | 示例 |
|---|---|---|
docker --version | 查看 Docker 版本 | docker --version |
docker images | 查看本地所有镜像 | docker images |
docker ps | 查看正在运行的容器 | docker ps(加-a查看所有容器,包括已停止的) |
docker pull [镜像名] | 从 Docker Hub 拉取镜像 | docker pull ubuntu(拉取 Ubuntu 系统镜像) |
docker run [选项] 镜像名 | 创建并运行容器 | docker run -it ubuntu(以交互模式运行 Ubuntu 容器) |
docker stop [容器ID/名称] | 停止运行中的容器 | docker stop 123abc(123abc 为容器 ID 前 6 位) |
六、常见问题排查
安装时提示 “GPG 密钥验证失败”:
重新执行 “添加 Docker 官方 GPG 密钥” 的命令,确保网络通畅,若仍失败,可检查是否有防火墙阻止了
curl访问外部网络。运行
docker run hello-world提示 “权限不足”:确认当前用户已添加到
docker组,且已重新登录或执行newgrp docker生效配置。Docker 服务无法启动:
执行
sudo journalctl -u docker查看服务日志,根据日志中的错误信息排查(常见原因:系统内核版本过低、端口被占用)。
(注:文档部分内容由 AI 查询生成)