在ubuntu上安装docker, 使用国内的安装源

安装docker的官方文档在ubuntu上无法安装docker了,之前安装的也无法更新了,因为 https://download.docker.com 无法访问。

测试了一下下面的文档,使用ali的源,安装成功。

使用的操作系统是:ubuntu 22.04.3 server版本。

参考文档: https://cloud.tencent.com/developer/article/2309562

1. 安装docker的安装过程中需要用到的一些辅助软件

$ sudo apt-get install ca-certificates curl gnupg lsb-release

2. 添加docker官方GPG密钥

$ curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

3. 添加docker软件源

$ sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

4. 安装docker

$ sudo apt-get install docker-ce docker-ce-cli containerd.io

5. 配置用户组,避免使用docker命令时要用sudo, 修改后需再次登陆才会生效

$ sudo usermod -aG docker $USER

 

to remove the repository : https://itsfoss.com/remove-software-repositories-ubuntu/

2026-07-29 更新

上面的配置中 apt-key 的方式已经过时了,使用 apt update 时会有警告

qms@winjoy-qms-srv2:/etc/apt/sources.list.d$ sudo apt update
Hit:4 http://security.ubuntu.com/ubuntu noble-security InRelease
Hit:5 http://mirrors.aliyun.com/docker-ce/linux/ubuntu noble InRelease
Hit:1 http://mirrors.tuna.tsinghua.edu.cn/ubuntu noble InRelease
Hit:2 http://mirrors.tuna.tsinghua.edu.cn/ubuntu noble-updates InRelease
Hit:3 http://mirrors.tuna.tsinghua.edu.cn/ubuntu noble-backports InRelease
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
All packages are up to date.
W: http://mirrors.aliyun.com/docker-ce/linux/ubuntu/dists/noble/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details.

为了解决这个问题,需要卸载 docker 然后重新安装,步骤如下:

1. 停止 docker 服务

qms@winjoy-qms-srv3:~$ sudo systemctl stop docker
Stopping 'docker.service', but its triggering units are still active:
docker.socket
qms@winjoy-qms-srv3:~$ sudo systemctl stop docker.socket containerd

2. 删除 docker安装的主文件

qms@winjoy-qms-srv3:~$ sudo apt remove -y docker-ce docker-ce-cli containerd.io

3. 删除关联文件

qms@winjoy-qms-srv3:~$ sudo apt autoremove -y

4. 

# 彻底清除所有docker相关包+配置
sudo apt purge -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo apt autoremove -y

5. 验证删除的情况

qms@winjoy-qms-srv3:~$ apt list --installed | grep docker

qms@winjoy-qms-srv3:~$ apt list --installed | grep containerd

6. 删除数据源

qms@winjoy-qms-srv3:~$ cd /etc/apt/sources.list.d

qms@winjoy-qms-srv3:/etc/apt/sources.list.d$ ls -al
total 20
drwxr-xr-x 2 root root 4096 Jul 29 11:35 .
drwxr-xr-x 9 root root 4096 Jul 29 11:34 ..
-rw-r--r-- 1 root root  138 Jul 29 11:35 archive_uri-http_mirrors_aliyun_com_docker-ce_linux_ubuntu-noble.list
-rw-r--r-- 1 root root  386 Jul 29 10:53 ubuntu.sources
-rw-r--r-- 1 root root 2552 Feb 10 08:26 ubuntu.sources.curtin.orig
qms@winjoy-qms-srv3:/etc/apt/sources.list.d$ sudo rm -f archive_uri-http_mirrors_aliyun_com_docker-ce_linux_ubuntu-noble.list

7. 删除 apt-key

qms@winjoy-qms-srv3:/etc/apt/sources.list.d$ sudo apt-key list
Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)).
/etc/apt/trusted.gpg
--------------------
pub   rsa4096 2017-02-22 [SCEA]
      9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88
uid           [ unknown] Docker Release (CE deb) <docker@docker.com>
sub   rsa4096 2017-02-22 [S]

/etc/apt/trusted.gpg.d/ubuntu-keyring-2012-cdimage.gpg
------------------------------------------------------
pub   rsa4096 2012-05-11 [SC]
      8439 38DF 228D 22F7 B374  2BC0 D94A A3F0 EFE2 1092
uid           [ unknown] Ubuntu CD Image Automatic Signing Key (2012) <cdimage@ubuntu.com>

/etc/apt/trusted.gpg.d/ubuntu-keyring-2018-archive.gpg
------------------------------------------------------
pub   rsa4096 2018-09-17 [SC]
      F6EC B376 2474 EDA9 D21B  7022 8719 20D1 991B C93C
uid           [ unknown] Ubuntu Archive Automatic Signing Key (2018) <ftpmaster@ubuntu.com>

qms@winjoy-qms-srv3:/etc/apt/sources.list.d$ sudo apt-key del 9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88

8. 下载并转换 GPG 密钥(gpg --dearmor)

qms@winjoy-qms-srv3:/etc/apt/keyrings$ curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

设置密钥访问权限

qms@winjoy-qms-srv3:/etc/apt/keyrings$ ls
docker.gpg
qms@winjoy-qms-srv3:/etc/apt/keyrings$ sudo chmod a+r /etc/apt/keyrings/docker.gpg

 

9. 设置数据源

qms@winjoy-qms-srv3:/etc/apt/keyrings$ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

 

10. 安装 docker

qms@winjoy-qms-srv3:/etc/apt/keyrings$ sudo apt install docker-ce docker-ce-cli containerd.io

 

posted @ 2024-08-22 01:01  脱缰的野猪  阅读(602)  评论(0)    收藏  举报