在基于 Debian 的系统(如 Ubuntu)上使用 apt
包管理器安装 Docker,可以遵循以下详细步骤。请注意,安装过程可能需要超级用户权限,因此步骤中的大多数命令前都会使用 sudo
。
-
更新
apt
包索引:sudo apt-get update
-
安装一些允许
apt
通过 HTTPS 使用仓库的必需包:sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ software-properties-common
-
添加 Docker 的官方 GPG 密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
遇到问题,原地址下载不动
更换个地址下载也一样
从你提供的输出中可以看出,你遇到了两个主要问题:
-
连接超时问题: 使用
curl
命令尝试从 Docker 的服务器下载 GPG 密钥时,连接超时。这可能是因为网络连接问题、Docker 服务器不可达或防火墙设置等原因。 -
apt-key
的过时警告: 你正在使用已经过时的apt-key
命令添加密钥。虽然这个命令还能运行,但建议改用更现代的方法来管理密钥。
解决方案
解决连接问题
- 检查网络连接: 确保你的设备能够连接到互联网。
- 尝试使用其他网络: 如果可能,尝试更换网络连接,看看是否能成功连接到 Docker 的服务器。
- 检查防火墙和代理设置: 确保没有网络安全设备或软件阻止你的连接。
使用新方法添加 Docker GPG 密钥
由于 apt-key
被废弃,推荐使用下面的步骤来安全地添加 Docker 的 GPG 密钥:
-
手动下载 GPG 密钥:通过xshell ftp传到服务器上
如果curl
命令因为网络问题失败,你可以尝试在浏览器中直接访问 https://download.docker.com/linux/ubuntu/gpg 并保存密钥文件。 -
将密钥添加到
/etc/apt/trusted.gpg.d/
:
将下载的密钥文件保存到本地,然后使用下面的命令将其添加到 APT 的信任密钥目录中:sudo gpg --no-default-keyring --keyring /etc/apt/trusted.gpg.d/docker.gpg --import <path-to-your-key-file>
替换
<path-to-your-key-file>
为你密钥文件的实际路径。
-
更新软件包索引:
sudo apt update
这些步骤应该帮助你安全地添加 Docker 的密钥,同时避免使用已废弃的 apt-key
。如果在执行这些步骤时遇到任何问题,或者需要进一步的帮助,请随时联系。
4. 设置稳定版仓库:
- 请注意,以下命令适用于 Ubuntu。如果您在使用其他基于 Debian 的系统,可能需要调整
lsb_release -cs
部分以匹配您的发行版。
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
-
再次更新
apt
包索引(因为我们添加了新的仓库):sudo apt-get update
-
安装 Docker CE(社区版):
sudo apt-get install docker-ce
-
验证 Docker 是否成功安装:
- 运行 Docker 版本命令来检查是否正确安装了 Docker。
docker --version
- 运行 Docker Hello World 镜像来验证 Docker 守护进程是否正常运行。
sudo docker run hello-world
这些步骤将帮助您在基于 Debian 的系统上安装 Docker。安装完成后,您可以开始使用 Docker 来创建和管理容器了。如果您想让非 root 用户运行 Docker 命令,还需要将您的用户添加到 docker
组中:
sudo usermod -aG docker $USER
之后,您需要注销再重新登录,或者重启系统以应用这些更改。这样,您就可以不使用 sudo
直接运行 Docker 命令了。
在 Ubuntu 上安装 Docker 和 Docker Compose 时,如果无法连接到 download.docker.com
,可以尝试以下方法来解决问题:
报错:连接mirrors.aliyun.com超时
错误:6 https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release Release
404 Not Found [IP: 42.202.209.193 443]
0% [正在连接 download.docker.com (2a03:2880:f127:283:face:b00c:0:25de)]
忽略:7 https://download.docker.com/linux/ubuntu jammy InRelease
方法:使用国内镜像源
如果以上方法仍然无法连接到 download.docker.com
,可以尝试使用国内镜像源,如阿里云镜像。
-
添加 Docker 官方 GPG 密钥:
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
-
设置阿里云 Docker 仓库:
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
-
更新软件包索引:
sudo apt-get update
-
安装 Docker CE:
sudo apt-get install docker-ce docker-ce-cli containerd.io