共计 2427 个字符,预计需要花费 7 分钟才能阅读完成。
要在Debian上开始使用Docker Engine,请确保你符合前提条件,然后按照安装步骤进行。
先决条件
如果你使用ufw或firewalld来管理防火墙设置,请注意,当你使用Docker暴露容器端口时,这些端口会绕过你的防火墙规则。欲了解更多信息,请参阅Docker和ufw。
操作系统要求
要安装Docker引擎,你需要这些Debian版本中的64位版本:
- Debian Bookworm 12 (stable)
- Debian Bullseye 11 (oldstable)
Docker Engine for Debian兼容x86_64(或amd64)、armhf和arm64架构。
卸载旧版本
在你安装Docker Engine之前,你必须首先确保任何冲突的软件包都被卸载了。
需要卸载的非官方软件包是:
- docker.io
- docker-compose
- docker-doc
- podman-docker
此外,Docker Engine依赖于containerd和runc。Docker Engine将这些依赖关系捆绑为一个捆绑包:containerd.io。如果你之前安装了containerd或runc,请卸载它们,以避免与捆绑在Docker Engine上的版本冲突。
运行以下命令来卸载所有冲突的软件包:
for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove $pkg; done
安装方法
你可以根据自己的需要,以不同的方式安装Docker引擎:
- Docker引擎与Docker Desktop for Linux捆绑在一起。这是最简单、最快速的入门方式。
- 从Docker的apt资源库中设置并安装Docker引擎。(本文提供的安装方式)
- 手动安装并手动管理升级。
- 使用一个方便的脚本。只推荐用于测试和开发环境。
使用apt软件库进行安装
在你第一次在新主机上安装Docker Engine之前,你需要设置Docker仓库。之后,你可以从存储库中安装和更新Docker。
设置存储库
- 更新apt软件包索引和安装包,以允许apt使用HTTPS上的存储库:
sudo apt-get update sudo apt-get install ca-certificates curl gnupg
- 添加Docker的官方GPG密钥:
sudo install -m 0755 -d /etc/apt/keyrings 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
- 使用下面的命令来设置版本库:
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
如果你使用衍生发行版,比如Kali Linux,你可能需要替换这个命令中期望打印版本代号的部分:
$(. /etc/os-release && echo "$VERSION_CODENAME")
安装Docker引擎
1. 更新apt软件包索引:
sudo apt-get update
2. 安装Docker Engine、containerd和Docker Compose:
要安装最新版本,请运行:
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
要安装特定版本的Docker Engine,首先要列出软件库中的可用版本:
# List the available versions:
apt-cache madison docker-ce | awk '{ print $3 }'
5:24.0.0-1~debian.11~bullseye
5:23.0.6-1~debian.11~bullseye
...
VERSION_STRING=5:24.0.0-1~debian.11~bullseye
sudo apt-get install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin
3. 通过运行hello-world镜像,验证Docker引擎的安装是否成功:
sudo docker run hello-world
这个命令下载一个测试镜像并在一个容器中运行。当容器运行时,它会打印出一条确认信息并退出。
现在你已经成功安装并启动了Docker Engine。
卸载Docker引擎
- 卸载Docker引擎、CLI、containerd和Docker Compose软件包:
sudo apt-get purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
- 你主机上的图像、容器、卷或自定义配置文件不会被自动删除。要删除所有的图像、容器和卷:
sudo rm -rf /var/lib/docker sudo rm -rf /var/lib/containerd
你必须手动删除任何编辑过的配置文件。
[Docker]Docker安装方式介绍—使用apt软件库在Debian上安装Docker引擎