一、安装前清理旧版本docker
旧版本的Docker被称作docker或者docker-engine。
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
二、使用repository进行安装
此种安装方式比较简单,并且升级方便。
1. 安装依赖项
安装Docker CE之前,需安装依赖:yum-utils提供的yum-config-manager工具,以及devicemapper需要的device-mapper-persistent-data和lvm2。
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
2. 安装stable版本的repository
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
附:启用或禁用nightly和test版本的命令如下
sudo yum-config-manager --enable docker-ce-nightly
sudo yum-config-manager --enable docker-ce-test
sudo yum-config-manager --disable docker-ce-nightly
sudo yum-config-manager --disable docker-ce-test
注意: 为加快yum的安装速度,我们可以使用阿里云的源。
sudo yum-config-manager --add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3. 安装Docker CE
sudo yum install docker-ce docker-ce-cli containerd.io
命令执行后,默认安装repository中的最高版本的Docker CE。Docker CE安装之后,会添加一个docker用户组,但是这个组中没有用户。
附:安装指定版本的Docker CE
a. 执行下面的命令列出repository包含的所有版本的Docker CE
yum list docker-ce --showduplicates | sort -r
docker-ce.x86_64 3:18.09.1-3.el7 docker-ce-stable
docker-ce.x86_64 3:18.09.0-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.1.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.0.ce-3.el7 docker-ce-stable
b. 执行下面的命令安装指定版本的Docker CE
sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io
4. 启动docker服务
sudo systemctl start docker
5. 运行hello-world,确认docker-ce已被正确安装
sudo docker run hello-world
6. 升级Docker CE
参考安装指定版本的Docker CE,选择需要的版本,并yum upgrade。
三、 使用rpm包安装Docker CE
在<https://download.docker.com/linux/centos/7/x86_64/stable/Packages/>下载所需版本的Docker CE rpm包,然后传到系统上安装即可。如需安装nightly和test版本,将链接中的stable替换成nightly和test即可。我们也可以使用阿里云<https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/stable/Packages/>等第三方源下载rpm包。
四、 使用convenience脚本安装
仅用于开发测试,不要用于生产环境。在使用前需注意以下几点:
- 脚本需要root或sudo的权限,在运行前请审核脚本。
- 脚本会自动检测系统的发行版和版本。脚本无法定制安装参数。
- 脚本会自动安装所有依赖的和推荐的安装包,并且不会通知你进行确认。
- 脚本没有提供选项让你选择安装的版本,她自动安装edge channel中的最新版。
- 如果已使用其他方式安装过docker,请不要使用convenience脚本来安装。
下面是安装get.docker.com中最新版Docker CE的例子,如需安装test.docker.com中的最新版,替换下面命令中出现的每一个get为test。
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
如果希望使用非root账号来使用docker,请将非root账号加入docker组。
sudo usermod -aG docker your-user
使用convenience脚本安装的,升级时需注意不要再次运行convenience脚本来升级,这会导致某些问题。如需升级,请直接使用系统的包管理工具。
五、 卸载Docker CE
1、 卸载软件包
sudo yum remove docker-ce
2、 images、containers、volumes、configuration files等数据不会自动删除。可执行下面的命令手动删除images、containers、volumes:
sudo rm -rf /var/lib/docker
3、 任何你修改过的configuration files,需要你手动进行删除。
参考:<https://docs.docker.com/install/linux/docker-ce/centos/>
文章如有错漏之处,欢迎在评论区中指正。
文章作者: yf_9186
文章链接: https://yfeng9186.gitee.io/blog/2020/1/install-dockerce-on-centos7/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 云中君!
来源:51CTO
作者:yf_9186
链接:https://blog.51cto.com/yfeng9186/2465700