- 卸载原有docker
1
|
sudo apt-get remove docker docker-engine docker.io contained runc
|
docker
: Docker 的主要软件包。
docker-engine
: Docker 引擎,也是 Docker 的核心组件之一。
docker.io
: 在某些系统上,docker.io 是 Docker 的软件包名称。
containerd
: Docker 的核心容器运行时组件之一,负责管理容器的生命周期。
runc
: Docker 使用的标准容器运行时,用于在容器中运行应用程序。
- 更新并升级包
1
2
|
sudo apt-get update
sudo apt-get upgrade
|
update
命令用于从软件源更新本地软件包列表,但不会安装或升级任何软件包
upgrade
命令用于安装所有可用软件包的最新版本,它会检查系统中已安装软件包的可用更新,并进行升级操作
- 安装一些必要的软件包,以便进行安全的软件包下载和通信
1
|
sudo apt-get install -y apt-transport-https ca-certificates curl gnupg-agent
|
apt-transport-https
:允许 apt
工具通过 HTTPS 协议下载软件包。
ca-certificates
:包含了用于验证 SSL/TLS 连接的各种证书颁发机构的根证书。
curl
:是一个命令行工具,用于通过 URL 进行数据传输,支持多种协议,包括 HTTP、HTTPS、FTP 等。
gnupg-agent
:用于管理 GnuPG(GNU 隐私卫士)密钥,确保安全通信和软件包的验证。
- 下载 Docker 官方的 GPG 密钥,并将其保存到指定的路径
/usr/share/keyrings/docker-archive-keyring.gpg
中
1
|
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
|
- 将 Docker 官方的 GPG 密钥添加到系统的
apt
的密钥环境中,以便系统验证从 Docker 软件源下载的软件包的真实性
1
|
sudo apt-key add /usr/share/keyrings/docker-archive-keyring.gpg
|
- 将 Docker 的软件源添加到 Ubuntu 系统的
apt
软件包管理器中
1
|
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu/ $(lsb_release -cs) stable"
|
W: https://mirrors.aliyun.com/docker-ce/linux/ubuntu/dists/jammy/InRelease: 密钥存储在过时的 trusted.gpg 密钥环中(/etc/apt/trusted.gpg),请参见 apt-key(8) 的 DEPRECATION 一节以了解详情。
解决:
1
2
|
cd /etc/apt
sudo cp trusted.gpg trusted.gpg.d
|
- 安装 Docker Engine-Community
1
|
sudo apt-get install docker-ce docker-ce-cli containerd.io
|
docker-ce
: 这是 Docker 社区版的主要软件包,包含 Docker 引擎和相关工具。docker-ce
是 Docker Community Edition 的缩写
docker-ce-cli
: 这是 Docker 社区版的客户端软件包,提供了 docker
命令行工具,用于与 Docker 引擎进行交互
containerd.io
: 这是 Docker 使用的容器运行时软件包,用于管理容器的生命周期,包括创建、运行、停止和删除容器等操作
- 验证docker安装是否成功
- 可以看到,最后会不显示
Server
,提示权限不够,而且执行docker
命令前必须加sudo
。因此,将当前用户添加到 docker
用户组中,使得该用户能够运行 docker
命令,不需要使用 sudo
或者管理员权限
1
|
sudo usermod -aG docker $(whoami)
|
- 重启系统后执行
docker version
命令验证是否加入成功,显示Server
就说明加入成功
- 设置docker服务开机自启动
1
|
sudo systemctl enable docker
|
- 验证docker compose安装是否成功