Docker安装

附:Docker教程

 

一 卸载docker

建议安装docker官方安装包

ubuntu 默认安装docker,但是版本可能较老或者可能默认安装了snap 的docker,而不是通过docker官方安装包或者apt安装的,这种情况restart docker会报错:

Failed to restart docker.service: Unit docker.service not found.

1. snap卸载docker

  • 可以通过命令查看snap安装的包:
snap list

 

  •   卸载snap安装的docker

snap卸载docker命令:

sudo snap remove docker

2. apt卸载docker

apt-get remove docker docker-engine docker.io containerd runc

 

 

 

二 安装docker

1. 方式一

Ubuntu命令一键执行安装

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

注意: 需要等待一段时间

2. 方式二 apt安装

安装前提依赖

apt update
apt-get install ca-certificates curl gnupg lsb-release

安装GPG证书

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

写入软件源信息

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

安装新版本

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

 

三 配置

1 添加docker用户组

groupadd docker

2  启动docker

systemctl start docker

 

3  docker换源

# 修改 /etc/docker/daemon.json (如果该文件不存在,则创建)
{
    "registry-mirrors": [
        "https://hub-mirror.c.163.com"
    ]
}

4 必要工具

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

5 配置 docker

# 添加 docker 配置 /etc/docker/daemon.json
{
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2",
  "registry-mirrors": ["docker镜像仓库国内加速"]
}

6 重启 docker

service docker restart

 

四 常见错误

 

安装完成后,可以把当前用户加入到docker分组中,这样后续运行docker命令可以不加sudo。

#添加当前用户到docker用户组
#更新用户组
sudo usermod -aG docker $USER
newgrp docker

 

报错:执行docker ps时提示"dial unix /var/run/docker.sock: connect: permission denied"如何处理?

将当前用户加入docker组,  ${USER} 添加的用户名

sudo usermod -aG docker ${USER}

修改/var/run/docker.sock的权限

sudo chmod 666 /var/run/docker.sock

 

报错: usermod: group 'docker' does not exist

这是因为在安装docker的使用如果使用npm install来安装,它是不会给你创建docker的group的,所以我们需要自己创建一个,

sudo groupadd docker

然后再执行添加用户操作就可以成功了,最后重启docker,

sudo usermod -aG docker ${USER}
sudo systemctl restart docker

 

五 重要提示

安装docker后,pull的镜像文件默认保存在/var/lib/docker中,如果根目录/或者/var目录挂载容量较小的话,需要修改docker配置文件:
sudo vi /lib/systemd/system/docker.service
修改:
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
为:
ExecStart=/usr/bin/dockerd -‌-graph /home/docker -H fd:// --containerd=/run/containerd/containerd.sock
其中,/home/docker是自定义的docker镜像文件保存目录,将源目录的文件mv到新目录,并重启docker服务:
sudo mv /var/lib/docker /home
sudo systemctl daemon-reload
sudo systemctl restart docker

 

posted @ 2022-06-07 16:31  IllidanStormrage  阅读(529)  评论(0编辑  收藏  举报