Docker 是一个开源容器平台,允许您构建、测试和运行应用程序作为便携式容器。容器将应用程序代码与其依赖项打包在一起,这使得在开发机器、测试环境和服务器之间运行相同的工作负载变得更加容易。
Docker 因其能保持应用程序环境可预测性,被广泛用于开发工作流和 DevOps 管道中。
本教程介绍如何在 Ubuntu 26.04 上安装 Docker。
支持的 Ubuntu 版本
Docker 可从标准的 Ubuntu 软件源获取,但这些软件包通常已过时。为了确保您获得最新的稳定版本,我们将通过官方 Docker 仓库安装 Docker。
截至撰写本文时,Docker 仓库为当前受支持的 Ubuntu 发行版提供软件包,包括 Ubuntu 26.04 LTS、Ubuntu 25.10、Ubuntu 24.04 LTS 和 Ubuntu 22.04 LTS。
Derivatives 如 Linux Mint 并未获得官方支持,尽管它们通常可以工作。
先决条件
开始之前,请确保:
- 您正在运行 64 位受支持的 Ubuntu 版本
- 您拥有一个具有 sudo 权限的用户账户
- 您的系统已连接互联网且为最新状态
首先卸载任何旧的或冲突的 Docker 软件包以避免潜在问题:
终端
sudo apt remove docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc在 Ubuntu 26.04 上安装 Docker
在 Ubuntu 上安装 Docker 相对简单。我们将启用 Docker 仓库、导入仓库 GPG 密钥并安装 Docker 软件包。
步骤 1:更新软件包索引并安装依赖项
首先,更新软件包索引并安装用于通过 HTTPS 使用仓库所需的软件包:
终端
sudo apt update
sudo apt install ca-certificates curl步骤 2:导入 Docker 的官方 GPG 密钥
添加 Docker 的官方 GPG 密钥,以便您的系统可以验证软件包的真实性:
终端
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc步骤 3:添加 Docker APT 仓库
将 Docker 仓库添加到您的系统:
终端
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF$(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") 从 OS 发行版文件中读取您的 Ubuntu 代号。在 Ubuntu 26.04 上它返回 resolute。
步骤 4:安装 Docker Engine
提示如果您想安装特定版本的 Docker,请跳过此步骤并进入下一步。
现在已启用 Docker 仓库,更新软件包索引并安装 Docker:
终端
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin安装特定版本的 Docker(可选)
如果您想安装特定版本的 Docker 而不是最新版本,首先列出可用版本:
终端
sudo apt update
apt list --all-versions docker-ce每一行包含软件包名称、版本和架构:
输出
docker-ce/resolute 5:29.4.0-1~ubuntu.26.04~resolute amd64
docker-ce/resolute 5:29.3.1-1~ubuntu.26.04~resolute amd64
docker-ce/resolute 5:29.3.0-1~ubuntu.26.04~resolute amd64...您只需要中间字段。不要包含软件包名称或 amd64 架构后缀。您甚至不需要指定架构,因为 apt 会从系统的 dpkg 架构中解析它。要仅打印版本字符串:
终端
apt list --all-versions docker-ce 2>/dev/null | awk 'NR>1 {print $2}'输出
5:29.4.0-1~ubuntu.26.04~resolute
5:29.3.1-1~ubuntu.26.04~resolute
5:29.3.0-1~ubuntu.26.04~resolute复制其中一个值(包括波浪号字符),并安装匹配的软件包。docker-ce 和 docker-ce-cli 必须锁定到同一版本:
终端
DOCKER_VERSION="5:29.4.0-1~ubuntu.26.04~resolute"
sudo apt install docker-ce=$DOCKER_VERSION docker-ce-cli=$DOCKER_VERSION containerd.io docker-buildx-plugin docker-compose-plugin如果 apt 报告未找到该版本,则版本字符串错误。重新运行上面的 awk 命令并精确复制值。
验证 Docker 安装
在大多数 Ubuntu 系统上,Docker 服务在安装后会自动启动。如果没有,请手动启动:
终端
sudo systemctl start docker检查服务状态:
终端
sudo systemctl status docker输出将类似于以下内容:
输出
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled)
Active: active (running)...您还可以确认客户端和守护进程正在响应:
终端
sudo docker version要验证 Docker 是否可以正确拉取和运行容器,请运行测试镜像:
终端
sudo docker run hello-world如果未在当地找到该镜像,Docker 将从 Docker Hub 下载它,运行容器,打印“来自 Docker 的问候”消息并退出。

容器在打印消息后停止,因为它没有长期运行的进程。
无需 sudo 运行 Docker 命令(强烈推荐)
默认情况下,只有 root 和具有 sudo 权限的用户才能运行 Docker 命令。
要允许非 root 用户执行 Docker 命令,请将用户添加到 docker 组:
终端
sudo usermod -aG docker $USER$USER 是一个环境变量,存储当前登录的用户名。如果您想使用另一个用户执行命令,请将 $USER 替换为该用户名。
运行 newgrp docker 或注销并重新登录以使组成员更改生效。
之后,您可以重新运行测试容器而无需 sudo:
终端
docker run hello-world默认情况下,Docker 从 Docker Hub 拉取镜像。它是一个基于云的注册表服务,将 Docker 镜像存储在公共或私有仓库中。
更新 Docker
当发布新的 Docker 版本时,使用标准系统命令进行更新:
终端
sudo apt update
sudo apt upgrade为防止 Docker 被自动更新,将其标记为保留:
终端
sudo apt-mark hold docker-ce卸载 Docker
在卸载 Docker 之前,建议删除所有容器、镜像、卷和网络:
运行以下命令停止所有运行的容器并删除所有 Docker 对象:
终端
docker container stop $(docker container ls -aq)
docker system prune -a --volumes -f删除 Docker 软件包:
终端
sudo apt purge docker-ce docker-ce-cli containerd.io \
docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
sudo apt autoremove要从系统中完全删除 Docker 数据,请删除安装过程中创建的目录:
终端
sudo rm -rf /var/lib/{docker,containerd}故障排除
尝试连接到 Docker 守护进程套接字时权限被拒绝
您的用户尚未在 docker 组中,或者组成员资格尚未生效。运行 sudo usermod -aG docker $USER,然后注销并重新登录(或运行 newgrp docker)。
无法连接到 Docker 守护进程。守护进程正在运行吗?
Docker 服务未运行。使用 sudo systemctl start docker 启动它并使用 sudo systemctl status docker 检查其状态。
软件包 'docker-ce' 没有安装候选项
Docker 仓库未正确添加。重新运行步骤 2 和 3,然后在安装之前运行 sudo apt update。
docker: 'compose' 不是 docker 命令docker compose 由 docker-compose-plugin 软件包提供,该软件包在 /usr/libexec/docker/cli-plugins/ 下安装插件二进制文件。如果缺少该插件,则子命令不存在,尽管来自发行版 docker-compose-v2 包的独立 docker-compose 二进制文件可能仍然有效。检查已安装的内容:
终端
dpkg -l | grep -i compose
ls -l /usr/libexec/docker/cli-plugins/然后安装插件并确认:
终端
sudo apt install docker-compose-plugin
docker compose version容器在操作系统或 Docker 升级后无法启动
检查 Docker 守护进程状态、已安装的 Docker 版本以及您的容器运行时配置。如果主机或 Docker Engine 最近进行了升级,请查阅 Docker 发行说明,并在重启工作负载之前验证它们是否使用了受支持的配置。