在Ubuntu安装Docker

1.查看Linux内核依赖

kernel version >= 3.8

查看代码:

uname -a | awk '{split($3, arr, "-"); print arr[1]}'

2. 使用Docker repository安装

1)更新apt包索引:

sudo apt-get update

2) 添加https支持

sudo apt-get install 
     apt-transport-https 
     ca-certificates 
     curl 
     gnupg2 
     software-properties-common

我在这步遇到了问题

进行百度后,网上给出了解决方案:

Ⅰ.清除目录下已损坏了的列表

sudo rm /var/lib/apt/lists/* -vf

Ⅱ.更新原注册信息

sudo apt-get update  

3) 添加Docker GPG秘钥(国内源)

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

4) 添加安装源(国内源)

sudo add-apt-repository 
    "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu 
    $(lsb_release -cs) 
    stable"

3. 安装Docker

1)更新apt包索引:

sudo apt-get update

2)安装Docker

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

4.开启Docker

sudo systemctl enable docker
sudo systemctl start docker

5. 验证是否安装成功

如果出现"Hello from Docker.", 则代表运行成功

 sudo docker run hello-world

6. 不使用sudo命令执行docker

1) 使用有sudo权限的帐号登录系统。

2) 创建docker分组,并将相应的用户添加到这个分组里面。

sudo usermod -aG docker your_username

3) 退出,然后重新登录,以便让权限生效。

4) 确认你可以直接运行docker命令。

$ docker 
          run hello-world

运行的时候再次报错

出现这个问题原因为国内网络问题,无法连接到 docker hub。

解决方案:

1) 查看 /etc/docker文件夹下是否有daemon.json,若无则新建

sudo touch  daemon.json

2) 编辑daemon.json文件

sudo vim daemon.json

3) 在daemon.json 文件中输入以下内容

{
  "registry-mirrors": ["https://9cpn8tt6.mirror.aliyuncs.com"]
}

4) 重启服务

 systemctl daemon-reload
 systemctl restart docker

5) 运行 hello-world

sudo docker run hello-world

原文地址:https://www.cnblogs.com/Lin1031/p/14056940.html