在 ubuntu20.04 安装 docker

1、替换清华源

替换 sources.list 里面的内容

sh 复制代码
sudo vim /etc/apt/sources.list
sh 复制代码
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse

# 以下安全更新软件源包含了官方源与镜像站配置,如有需要可自行修改注释切换
deb http://security.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse
# deb-src http://security.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse

2、更新包缓存和下载

sh 复制代码
sudo apt update
sh 复制代码
sudo apt upgrade

3、删除存在的 docker

sh 复制代码
sudo apt remove docker docker-engine docker.io containerd runc

查看版本

sh 复制代码
sudo docker --version

查看是否还存在 docker 服务

sh 复制代码
sudo dpkg -l | grep docker

4、安装 docker

安装 docker 依赖库

sh 复制代码
sudo apt install apt-transport-https ca-certificates curl gnupg lsb-release software-properties-common

导入 GPG key

sh 复制代码
sudo curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

添加 docker apt 源

sh 复制代码
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

安装 docker

sh 复制代码
sudo apt install docker-ce docker-ce-cli containerd.io

5、验证安装

sh 复制代码
sudo docker --version
sh 复制代码
sudo docker run hello-world

6、FAQ

1)导入GPG key失败

本地下载 GPG

sh 复制代码
https://download.docker.com/linux/ubuntu/gpg

添加本地 GPG。注意替换本地路径

sh 复制代码
sudo apt-key add /root/docker/gpg

2)docker run hello-world 失败

可以自己从阿里云获取一个免费的专属地址 https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

设置 registry mirror

sh 复制代码
sudo mkdir -p /etc/docker
sh 复制代码
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://w1m3bf6y.mirror.aliyuncs.com"]
}
EOF

重启 docker 服务

sh 复制代码
sudo systemctl restart docker

或者

sh 复制代码
service docker restart
相关推荐
极客先躯21 分钟前
高级java每日一道面试题-2026年05月03日-实战篇[Docker]-如何实现容器化环境的数据加密?
java·运维·docker·容器·金融·加解密·高级面试
三言老师2 小时前
CentOS7.9:Redis‑Cluster集群部署结构化实战教程
linux·运维·服务器·数据库
attitude.x3 小时前
Cursor+GitOps:自动化运维新姿势
运维·自动化
数智化管理手记4 小时前
主数据重复、错漏频发?一站式主数据管理平台如何落地?
大数据·运维·数据库·人工智能·数据挖掘
Shell运维手记4 小时前
ARP 协议超详细讲解(适合网工考试 / 运维理解)
运维·网络·网络协议·智能路由器
西安景驰电子5 小时前
PCIe 授时卡原理及应用
运维·服务器·windows·单片机·嵌入式硬件·fpga开发
程序喵大人5 小时前
【C++进阶】STL容器与迭代器 - 05 map 和 set 为什么按键保持有序
开发语言·c++·容器·迭代器·stl
huainingning6 小时前
华三瘦AP切换为胖AP并配置无线功能
运维·网络·网络协议·tcp/ip
外滩运维专家7 小时前
十几台服务器要改配置,别再一台台 SSH 了
运维
冷莫溪7 小时前
Zabbix——认识及部署Zabbix(基于Rocky9.7)
linux·运维·php·zabbix