在 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
相关推荐
一个天蝎座 白勺 程序猿8 小时前
KingbaseES数据库归档重做日志文件管理:从配置到运维的实战指南
运维·数据库·oracle·kingbasees·金仓数据库
分布式存储与RustFS12 小时前
镜像仓库的层别堆本地盘:用 RustFS 给 Docker Registry 当 S3 后端
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
陈希12313 小时前
Linux 防火墙配置实战:firewalld、iptables 与云安全组
linux·运维·服务器
@兽血沸腾14 小时前
Windows系统安装Jenkins部署应用至远程Windows服务器操作指南
运维·服务器·jenkins
闲云自留地19 小时前
K8s 的记忆大脑!ETCD 集群部署、etcdctl 命令与备份恢复全通关
容器·kubernetes·etcd
讯捷蓝达19 小时前
戴尔R720xd服务器卡死在 “Configuring Memory...Done“,换了内存还是卡?问题根本不在内存
运维·服务器
爱和冰阔落1 天前
【Linux网络】TCP 服务器如何并发处理多个客户端?从 fork、僵尸进程到双重 fork
linux·运维·服务器·网络
lisanmengmeng1 天前
alertmanger 标签 rules 打上分组标签
linux·运维·服务器
Android系统攻城狮1 天前
Linux FFmpeg深度解析之av_write_frame调用流程与实战(三十三)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频
上火的金鱼妹1 天前
k8s生产实际问题排查(网关,数据库读写等)
运维·服务器