- 环境准备:
- Docker CE 支持 64 位版本 CentOS 7,并且要求内核版本不低于 3.10。
- 需要卸载旧的docker版本:
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine
说明我之前没有安装过docker。
安装方式
yum 安装
- 安装依赖
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
- 添加docker的yum安装源(不建议使用官网,建议使用国内的docker源)
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
- 安装 Docker CE
# 更新 yum 软件源缓存
sudo yum makecache fast
# 安装 docker-ce(docker社区版)
sudo yum install docker-ce
使用脚本的方式自动安装
在测试或开发环境中 Docker 官方为了简化安装流程,提供了一套便捷的安装脚本,CentOS 系统上可以使用这套脚本安装
# 下载脚本
curl -fsSL get.docker.com -o get-docker.sh
# 使用脚本下载docker及相关依赖
sudo sh get-docker.sh --mirror Aliyun
启动docker
sudo systemctl enable docker
sudo systemctl start docker
建立docker用户组
默认情况下,docker 命令会使用 Unix socket 与 Docker 引擎通讯。而只有 root 用户和 docker 组的用户才可以访问 Docker 引擎的 Unix socket。出于安全考虑,一般 Linux 系统上不会直接使用 root 用户。因此,更好地做法是将需要使用 docker 的用户加入 docker 用户组。
# 建立 docker 组
sudo groupadd docker
# 把当前用户添加到docker 组中
sudo usermod -aG docker $USER
验证docker是否安装成功
docker run hello-world
卸载docker
# 卸载Docker Engine,CLI和Containerd软件包
sudo yum remove docker-ce docker-ce-cli containerd.io
# 主机上的映像,容器,卷或自定义配置文件不会自动删除。要删除所有图像,容器和卷
sudo rm -rf /var/lib/docker
docker 加速器
对于使用 systemd 的系统,请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件)
{"registry-mirrors":["https://hub-mirror.c.163.com/"]}
# 重启
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
使用docker info命令查看是否生效。