ubuntu22.04上安装docker遇到的问题和解决方案

云服务器ubuntu版本及架构

一   安装过程

①curl 命令安装

sudo apt install curl -y

②创建 gpg key 目录

sudo mkdir -m 0755 -p /etc/apt/keyrings

③添加docker官方gpg key

 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor --yes -o /etc/apt/keyrings/docker.gpg

④添加apt源

echo \
"deb [arch=$(dpkg --print-architecture) signedby=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

⑤更新源并安装docker

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y

二  配置docker服务

安装完毕后执行下述指令完成docker服务配置

#查看服务状态
sudo systemctl status docker
#配置加载
sudo systemctl daemon-reload
#启动服务
sudo systemctl start docker 
#开启启动
sudo systemctl enable docker 

三 docker常用指令

#查看docker版本
sudo docker  version 
#查看docker详细信息
sudo docker info

四 测试docker安装是否成功

运行指令

sudo docker run hello-world

输出以上内容则安装成功。
 

⑤常见问题解决

1.执行完sudo apt-get update出现以下问题

解决方案

#添加公钥
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 7EA0A9C3F273FCD8
#再次执行
sudo apt-get update
#安装docker
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y

2.执行docker相关命令提示权限不足

解决方案①:命令前加sudo

#命令前加入sudo
sudo docker info

解决方案②:将当前用户加入docker用户组

#添加docker用户组
sudo groupadd docker    
#将当前用户添加至用户组  
sudo gpasswd -a <当前用户名>docker 
#更新用户组
newgrp docker                      

3.出现警告bridge-nf-call-iptables is disabled,bridge-nf-call-ip6tables is disabled

解决方案

sudo vim /etc/sysctl.conf
#添加以下内容
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
#执行以下命令
sudo  modprobe br_netfilter
sudo sysctl -p
#重新加载
sudo systemctl daemon-reload
#重启docker
sudo systemctl restart docker

4.docker run hello-world出现问题

解决方案:

#修改daemon.json文件,没有文件用vim打开会自动创建。
vim /etc/docker/daemon.json

#按i进入插入模式,复制粘贴以下内容
 {                                                                                                                                 
   "registry-mirrors": 
     [
          "https://pee6w651.mirror.aliyuncs.com",                                                                                        
          "http://hub-mirror.c.163.com",
          "https://registry.docker-cn.com",
          "https://docker.mirrors.ustc.edu.cn"
     ]
 }
#重新加载
systemctl daemon-reload

#重启docker服务
systemctl restart docker

#重新执行
sudo docker run hello-world


  


如下则成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值