CentOS7.5.1804 Minimal上安装docker
程序员文章站
2022-06-03 23:45:44
...
目录
Docker从1.13版本之后采用时间线的方式作为版本号,分为社区版CE和企业版EE。
社区版是免费提供给个人开发者和小型团体使用的,企业版会提供额外的收费服务,比如经过官方测试认证过的基础设施、容器、插件等。
社区版按照stable和edge两种方式发布,每个季度更新stable版本,如17.06,17.09;每个月份更新edge版本,如17.09,17.10。
一、安装docker
1、查看Centos版本
Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。
通过 uname -r 命令查看你当前的内核版本
[root@oracle /]# uname -r
3.10.0-862.3.3.el7.x86_64
[root@oracle /]#
2、更新yum包
[root@oracle /]# yum update -y
3、卸载旧版本(如果安装过旧版本的话)
[root@oracle /]# sudo yum remove docker docker-common docker-selinux docker-engine
因为我没安装过docker,所以提示上面的信息,如果之前没安装过,可直接跳过这一步。
4、安装需要的软件包
yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
[aaa@qq.com /]# sudo yum install -y yum-utils device-mapper-persistent-data lvm2 #安装需要的软件包
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.cn99.com
* extras: mirrors.cn99.com
* updates: mirrors.cn99.com
软件包 device-mapper-persistent-data-0.7.3-3.el7.x86_64 已安装并且是最新版本
软件包 7:lvm2-2.02.177-4.el7.x86_64 已安装并且是最新版本
正在解决依赖关系
--> 正在检查事务
---> 软件包 yum-utils.noarch.0.1.1.31-45.el7 将被 安装
--> 正在处理依赖关系 python-kitchen,它被软件包 yum-utils-1.1.31-45.el7.noarch 需要
--> 正在处理依赖关系 libxml2-python,它被软件包 yum-utils-1.1.31-45.el7.noarch 需要
--> 正在检查事务
---> 软件包 libxml2-python.x86_64.0.2.9.1-6.el7_2.3 将被 安装
---> 软件包 python-kitchen.noarch.0.1.1.1-5.el7 将被 安装
--> 正在处理依赖关系 python-chardet,它被软件包 python-kitchen-1.1.1-5.el7.noarch 需要
--> 正在检查事务
---> 软件包 python-chardet.noarch.0.2.2.1-1.el7_1 将被 安装
--> 解决依赖关系完成
依赖关系解决
=======================================================================================================
Package 架构 版本 源 大小
=======================================================================================================
正在安装:
yum-utils noarch 1.1.31-45.el7 base 119 k
为依赖而安装:
libxml2-python x86_64 2.9.1-6.el7_2.3 base 247 k
python-chardet noarch 2.2.1-1.el7_1 base 227 k
python-kitchen noarch 1.1.1-5.el7 base 267 k
事务概要
=======================================================================================================
安装 1 软件包 (+3 依赖软件包)
总下载量:859 k
安装大小:4.3 M
Downloading packages:
(1/4): libxml2-python-2.9.1-6.el7_2.3.x86_64.rpm | 247 kB 00:00:03
(2/4): python-chardet-2.2.1-1.el7_1.noarch.rpm | 227 kB 00:00:04
(3/4): python-kitchen-1.1.1-5.el7.noarch.rpm | 267 kB 00:00:04
(4/4): yum-utils-1.1.31-45.el7.noarch.rpm | 119 kB 00:00:00
-------------------------------------------------------------------------------------------------------
总计 192 kB/s | 859 kB 00:00:04
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安装 : python-chardet-2.2.1-1.el7_1.noarch 1/4
正在安装 : python-kitchen-1.1.1-5.el7.noarch 2/4
正在安装 : libxml2-python-2.9.1-6.el7_2.3.x86_64 3/4
正在安装 : yum-utils-1.1.31-45.el7.noarch 4/4
验证中 : yum-utils-1.1.31-45.el7.noarch 1/4
验证中 : libxml2-python-2.9.1-6.el7_2.3.x86_64 2/4
验证中 : python-kitchen-1.1.1-5.el7.noarch 3/4
验证中 : python-chardet-2.2.1-1.el7_1.noarch 4/4
已安装:
yum-utils.noarch 0:1.1.31-45.el7
作为依赖被安装:
libxml2-python.x86_64 0:2.9.1-6.el7_2.3 python-chardet.noarch 0:2.2.1-1.el7_1
python-kitchen.noarch 0:1.1.1-5.el7
完毕!
[aaa@qq.com /]#
5、设置yum源
[root@oracle /]# sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
6、可以查看所有仓库中所有docker版本,并选择特定版本安装
[aaa@qq.com /]# yum list docker-ce --showduplicates | sort -r
已加载插件:fastestmirror
可安装的软件包
* updates: mirrors.cn99.com
Loading mirror speeds from cached hostfile
* extras: mirrors.cn99.com
docker-ce.x86_64 18.06.0.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.03.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 18.03.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.12.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.12.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.09.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.09.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.2.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.2.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.0.ce-1.el7.centos docker-ce-stable
* base: mirrors.cn99.com
[aaa@qq.com /]#
7、安装docker
[aaa@qq.com /]# sudo yum install docker-ce #由于repo中默认只开启stable仓库,故这里安装的是最新稳定版18.03.1
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.cn99.com
* extras: mirrors.cn99.com
* updates: mirrors.cn99.com
正在解决依赖关系
--> 正在检查事务
---> 软件包 docker-ce.x86_64.0.18.06.0.ce-3.el7 将被 安装
--> 正在处理依赖关系 container-selinux >= 2.9,它被软件包 docker-ce-18.06.0.ce-3.el7.x86_64 需要
--> 正在处理依赖关系 libseccomp >= 2.3,它被软件包 docker-ce-18.06.0.ce-3.el7.x86_64 需要
--> 正在处理依赖关系 libcgroup,它被软件包 docker-ce-18.06.0.ce-3.el7.x86_64 需要
--> 正在处理依赖关系 libseccomp.so.2()(64bit),它被软件包 docker-ce-18.06.0.ce-3.el7.x86_64 需要
--> 正在检查事务
---> 软件包 container-selinux.noarch.2.2.66-1.el7 将被 安装
--> 正在处理依赖关系 policycoreutils-python,它被软件包 2:container-selinux-2.66-1.el7.noarch 需要
---> 软件包 libcgroup.x86_64.0.0.41-15.el7 将被 安装
---> 软件包 libseccomp.x86_64.0.2.3.1-3.el7 将被 安装
--> 正在检查事务
---> 软件包 policycoreutils-python.x86_64.0.2.5-22.el7 将被 安装
--> 正在处理依赖关系 setools-libs >= 3.3.8-2,它被软件包 policycoreutils-python-2.5-22.el7.x86_64 需要
--> 正在处理依赖关系 libsemanage-python >= 2.5-9,它被软件包 policycoreutils-python-2.5-22.el7.x86_64 需要
--> 正在处理依赖关系 audit-libs-python >= 2.1.3-4,它被软件包 policycoreutils-python-2.5-22.el7.x86_64 需要
--> 正在处理依赖关系 python-IPy,它被软件包 policycoreutils-python-2.5-22.el7.x86_64 需要
--> 正在处理依赖关系 libqpol.so.1(VERS_1.4)(64bit),它被软件包 policycoreutils-python-2.5-22.el7.x86_64 需要
--> 正在处理依赖关系 libqpol.so.1(VERS_1.2)(64bit),它被软件包 policycoreutils-python-2.5-22.el7.x86_64 需要
--> 正在处理依赖关系 libapol.so.4(VERS_4.0)(64bit),它被软件包 policycoreutils-python-2.5-22.el7.x86_64 需要
--> 正在处理依赖关系 checkpolicy,它被软件包 policycoreutils-python-2.5-22.el7.x86_64 需要
--> 正在处理依赖关系 libqpol.so.1()(64bit),它被软件包 policycoreutils-python-2.5-22.el7.x86_64 需要
--> 正在处理依赖关系 libapol.so.4()(64bit),它被软件包 policycoreutils-python-2.5-22.el7.x86_64 需要
--> 正在检查事务
---> 软件包 audit-libs-python.x86_64.0.2.8.1-3.el7 将被 安装
---> 软件包 checkpolicy.x86_64.0.2.5-6.el7 将被 安装
---> 软件包 libsemanage-python.x86_64.0.2.5-11.el7 将被 安装
---> 软件包 python-IPy.noarch.0.0.75-6.el7 将被 安装
---> 软件包 setools-libs.x86_64.0.3.3.8-2.el7 将被 安装
--> 解决依赖关系完成
依赖关系解决
============================================================================================================
Package 架构 版本 源 大小
============================================================================================================
正在安装:
docker-ce x86_64 18.06.0.ce-3.el7 docker-ce-stable 41 M
为依赖而安装:
audit-libs-python x86_64 2.8.1-3.el7 base 75 k
checkpolicy x86_64 2.5-6.el7 base 294 k
container-selinux noarch 2:2.66-1.el7 extras 35 k
libcgroup x86_64 0.41-15.el7 base 65 k
libseccomp x86_64 2.3.1-3.el7 base 56 k
libsemanage-python x86_64 2.5-11.el7 base 112 k
policycoreutils-python x86_64 2.5-22.el7 base 454 k
python-IPy noarch 0.75-6.el7 base 32 k
setools-libs x86_64 3.3.8-2.el7 base 619 k
事务概要
============================================================================================================
安装 1 软件包 (+9 依赖软件包)
总下载量:42 M
安装大小:174 M
Is this ok [y/d/N]: y
Downloading packages:
(1/10): audit-libs-python-2.8.1-3.el7.x86_64.rpm | 75 kB 00:00:02
(2/10): container-selinux-2.66-1.el7.noarch.rpm | 35 kB 00:00:02
(3/10): libseccomp-2.3.1-3.el7.x86_64.rpm | 56 kB 00:00:00
(4/10): libcgroup-0.41-15.el7.x86_64.rpm | 65 kB 00:00:03
(5/10): checkpolicy-2.5-6.el7.x86_64.rpm | 294 kB 00:00:03
(6/10): python-IPy-0.75-6.el7.noarch.rpm | 32 kB 00:00:00
(7/10): policycoreutils-python-2.5-22.el7.x86_64.rpm | 454 kB 00:00:01
(8/10): setools-libs-3.3.8-2.el7.x86_64.rpm | 619 kB 00:00:01
(9/10): libsemanage-python-2.5-11.el7.x86_64.rpm | 112 kB 00:00:03
warning: /var/cache/yum/x86_64/7/docker-ce-stable/packages/docker-ce-18.06.0.ce-3.el7.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID 621e9f35: NOKEY
docker-ce-18.06.0.ce-3.el7.x86_64.rpm 的公钥尚未安装
(10/10): docker-ce-18.06.0.ce-3.el7.x86_64.rpm | 41 MB 00:03:32
------------------------------------------------------------------------------------------------------------
总计 204 kB/s | 42 MB 00:03:32
从 https://download.docker.com/linux/centos/gpg 检索**
导入 GPG key 0x621E9F35:
用户ID : "Docker Release (CE rpm) <aaa@qq.com>"
指纹 : 060a 61c5 1b55 8a7f 742b 77aa c52f eb6b 621e 9f35
来自 : https://download.docker.com/linux/centos/gpg
是否继续?[y/N]:y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安装 : libcgroup-0.41-15.el7.x86_64 1/10
正在安装 : checkpolicy-2.5-6.el7.x86_64 2/10
正在安装 : audit-libs-python-2.8.1-3.el7.x86_64 3/10
正在安装 : libseccomp-2.3.1-3.el7.x86_64 4/10
正在安装 : libsemanage-python-2.5-11.el7.x86_64 5/10
正在安装 : setools-libs-3.3.8-2.el7.x86_64 6/10
正在安装 : python-IPy-0.75-6.el7.noarch 7/10
正在安装 : policycoreutils-python-2.5-22.el7.x86_64 8/10
正在安装 : 2:container-selinux-2.66-1.el7.noarch 9/10
setsebool: SELinux is disabled.
正在安装 : docker-ce-18.06.0.ce-3.el7.x86_64 10/10
验证中 : libcgroup-0.41-15.el7.x86_64 1/10
验证中 : docker-ce-18.06.0.ce-3.el7.x86_64 2/10
验证中 : python-IPy-0.75-6.el7.noarch 3/10
验证中 : setools-libs-3.3.8-2.el7.x86_64 4/10
验证中 : policycoreutils-python-2.5-22.el7.x86_64 5/10
验证中 : libsemanage-python-2.5-11.el7.x86_64 6/10
验证中 : libseccomp-2.3.1-3.el7.x86_64 7/10
验证中 : audit-libs-python-2.8.1-3.el7.x86_64 8/10
验证中 : 2:container-selinux-2.66-1.el7.noarch 9/10
验证中 : checkpolicy-2.5-6.el7.x86_64 10/10
已安装:
docker-ce.x86_64 0:18.06.0.ce-3.el7
作为依赖被安装:
audit-libs-python.x86_64 0:2.8.1-3.el7 checkpolicy.x86_64 0:2.5-6.el7
container-selinux.noarch 2:2.66-1.el7 libcgroup.x86_64 0:0.41-15.el7
libseccomp.x86_64 0:2.3.1-3.el7 libsemanage-python.x86_64 0:2.5-11.el7
policycoreutils-python.x86_64 0:2.5-22.el7 python-IPy.noarch 0:0.75-6.el7
setools-libs.x86_64 0:3.3.8-2.el7
完毕!
[aaa@qq.com /]#
8、启动docker
[root@oracle ~]# systemctl start docker
9、设置镜像,镜像加速
鉴于国内网络问题,后续拉取 Docker 镜像十分缓慢,我们可以需要配置加速器来解决,我使用的是网易的镜像地址:https://aj2rgad5.mirror.aliyuncs.com。
新版的 Docker 使用 /etc/docker/daemon.json(Linux) 或者 %programdata%\docker\config\daemon.json(Windows) 来配置 Daemon。
请在该配置文件中加入(没有该文件的话,请先建一个):
{
“registry-mirrors”: [“https://aj2rgad5.mirror.aliyuncs.com“]
}
[root@oracle ~]# vi /etc/docker/daemon.json
设置如下参数
{
"registry-mirrors": ["https://aj2rgad5.mirror.aliyuncs.com"]
}
10、开放管理端口映射
[root@oracle ~]# vi /lib/systemd/system/docker.service
将第11行的ExecStart=/usr/bin/dockerd,替换为:
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock -H tcp://0.0.0.0:7654
2375是管理端口,7654是备用端口
在~/.bashrc中写入docker管理端口
export DOCKER_HOST=tcp://0.0.0.0:2375
是~/.bashrc文件生效
[root@oracle ~]# source ~/.bashrc
11、重启docker
[root@oracle ~]# systemctl daemon-reload
[root@oracle ~]# systemctl restart docker.service
12、验证安装是否成功(有client和service两部分表示docker安装启动都成功了)
[root@oracle ~]# docker version
Client:
Version: 18.06.0-ce
API version: 1.38
Go version: go1.10.3
Git commit: 0ffa825
Built: Wed Jul 18 19:08:18 2018
OS/Arch: linux/amd64
Experimental: false
Server:
Engine:
Version: 18.06.0-ce
API version: 1.38 (minimum version 1.12)
Go version: go1.10.3
Git commit: 0ffa825
Built: Wed Jul 18 19:10:42 2018
OS/Arch: linux/amd64
Experimental: false
[root@oracle ~]#