在 Debian 及其发行版上进行部署 Docker 容器,比如 Ubuntu 等。
更新记录
2023-06
- (06-10)「新增」关于 Debian 12 版本支持
在不同发行版上安装
Debian
系统要求
官方仓库目前仅支持 64-bit 的 Debian 及 Raspbian 版本:
- Debian 12 Bookworm (stable)
- Debian 11 Bullseye (oldstable)
树莓派
- Raspbian 12 Bookworm (testing)
- Raspbian 11 Bullseye (stable)
- Raspbian 10 Buster (oldstable)
对 x86_64
(amd64
)、 armhf
和 arm64
架构提供支持。
卸载旧版本
在安装 Docker 引擎前,必须首先确定冲突的包已经被卸载。
发行版主线提供了非官方构建的 Docker 包,在安装官方版本的 Docker 前必须要先卸载那些包。
需要卸载的非官方包包含:
docker.io
docker-compose
docker-doc
podman-docker
此外,Docker 引擎依赖于 containerd
和 runc
。Docker 引擎打包了这两个依赖在一个包里:containerd.io
。如果已经安装了这两个包请卸载掉以防和捆绑的包产生冲突。
执行下面的命令去卸载冲突的包:
for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt remove --purge $pkg; done
如果提示没有找到这些软件包,那么也没关系,直接进行下面的步骤即可。
镜像、容器、数据卷和网络配置等被存储在 /var/lib/docker/
目录中,不会随着 Docker 卸载而自动清除,如果想进行全新的清洁安装,或者想清理现有的数据,可以执行命令:
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
安装
使用 apt 仓库进行安装
配置仓库
更新仓库索引并配置仓库支持 HTTPS 连接
sudo apt update
sudo apt install ca-certificates curl gnupg
添加官方 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
中国大陆地区请使用镜像地址进行安装
curl -fsSL https://download.docker.com/linux/debian/gpg | \
sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
中国大陆推荐使用国内镜像站
阿里开源镜像
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/debian/gpg | \ sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/debian \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
网易开源镜像
curl -fsSL https://mirrors.163.com/docker-ce/linux/debian/gpg | \ sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] http://mirrors.163.com/docker-ce/linux/debian \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
清华开源镜像
curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/gpg | \ sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
安装
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io
Ubuntu
系统要求
想安装 Docker 软件,需要使用 64-bit 并在以下列表中的任意 Ubuntu 版本:
- Ubuntu 22.04 Jammy (LTS)
- Ubuntu 20.04 Focal (LTS)
- Ubuntu 18.04 Bionic (LTS)
对 x86_64
(amd64
)、 armhf
、arm64
和 s390x
架构提供支持。
小贴士:Ubuntu 16.04 LTS 已经结束了五年的长期支持,因此 Docker 不再发布此发行版的软件包(包括补丁和安全更新),建议还在使用 Ubuntu 16.04 的 Docker 用户更新至当前受支持的 LTS 版本。
卸载旧版本
sudo apt remove docker docker-engine docker.io containerd runc
如果提示没有找到这些软件包,那么也没关系,直接进行下面的步骤即可。
注意:系统目录
/var/lib/docker/
(存放镜像、容器、数据卷、网络配等)会被默认保留,若需要彻底清理,请删除执行下面的命令。sudo rm -rf /var/lib/docker sudo rm -rf /var/lib/containerd
支持的存储驱动
Docker 的 Ubuntu 版本支持 overlay2
、aufs
和 btrfs
存储驱动。
Docker 使用 overlay2
作为默认存储驱动。如果需要使用其他存储引擎,请参考配置。
配置仓库
更新包管理器的索引,并通过 HTTPS 使用仓库:
sudo apt update
sudo apt install \
ca-certificates \
curl \
gnupg \
lsb-release
注意:Ubuntu 18.04 后默认支持 HTTPS 仓库,无需安装 apt-transport-https
包。
非中国大陆地区请使用官方地址进行安装
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \
sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
小贴士:在 Ubuntu 18.04 之后的版本不再支持 i386/x86 架构,因此必须添加[arch=amd64]
字段,之前的版本此字段可省略。除amd64
外,此外还支持armhf
arm64
ppc64le
s390x
架构。
中国大陆推荐使用国内镜像站
阿里开源镜像
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | \ sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
网易开源镜像
curl -fsSL https://mirrors.163.com/docker-ce/linux/ubuntu/gpg | \ sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.163.com/docker-ce/linux/ubuntu/ \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
清华开源镜像
curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/gpg | \ sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/ \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
安装
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io
可选的配置
这几个配置是可选的,不进行操作也不会有任何问题,但可以让 Docker 工作得更好。
使用非根用户管理 Docker
Docker 守护进程监听 Unix 套接字,而不是 TCP 端口。默认情况下 Unix 套接字归属于 root 用户,其他用户仅可以通过 sudo
命令进行访问,Docker 守护进程只能以 root 用户运行。
如果不想在使用 Docker 命令时添加 sudo
,可以创建一个 docker 用户组并且将用户加入,当 Docker 守护进程启动时,会创建一个可供 docker 用户组的成员访问的 Unix 套接字。
警告:Docker 用户组成员的权限等同于 root 用户,因此如果想了解关于此操作对于系统的影响,可以参考Docker 守护进程攻击。
创建用户组
sudo groupadd docker
将当前用户添加至组
sudo usermod -aG docker $USER
重启机器或者终端来应用新的用户组信息
内核兼容性检查
目前仅支持 3.10 之后版本的内核,如果想测试内核兼容性,可以下载下面的测试工具。
curl -O https://raw.githubusercontent.com/docker/docker/master/contrib/check-config.sh
bash ./check-config.sh
Docker Compose
安装 Docker CE 后可以选择继续安装 Docker Compose 。官方 Github 仓库地址。
Docker compose V2 版本不再使用之前的旧方式部署,使用了全新的插件形式,可以在 docker
后使用 compose
参数调用。
现在已经提供多种方式进行安装:
包管理器安装(推荐)
执行命令
sudo apt install docker-compose-plugin
完成!
二进制安装(可选)
使用下面的命令下载当前最新版的 compose
mkdir -p ~/.docker/cli-plugins/ curl -SL https://github.com/docker/compose/releases/download/v2.2.3/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose
小贴士:此命令会将 Compose V2 下载到当前用户
$HOME
家目录下,如果想将此命令提供给系统所有用户使用可以将后面地址换成/usr/local/lib/docker/cli-plugins
。为可执行文件授权
chmod +x ~/.docker/cli-plugins/docker-compose
测试安装结果
docker compose version
附录
相关链接
参考链接
本文由 柒 创作,采用 知识共享署名4.0
国际许可协议进行许可。
转载本站文章前请注明出处,文章作者保留所有权限。
最后编辑时间: 2019-06-11 09:51 AM