安装环境介绍
- 操作系统:CentOS7
- Docker版本:Docker-CE最新版本
安装Docker-CE
官方链接:https://docs.docker.com/engine/installation/
卸载旧版本docker:
如果存在旧版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
安装必要的依赖包:
# yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
配置Docker yum源:
这里使用国内阿里云Yum源:
$ sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
也可以配置官方yum源:
$ sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
安装Docker-CE:
$ yum install -y docker-ce
查看docker版本,确认安装成功
$ docker --version
Docker version 18.09.0, build 4d60db4
启动Docker服务并设为开机启动
$ systemctl start docker && systemctl enable docker
#确认docker服务运行正常,显示active (running)说明服务正常运行
$ systemctl status docker.service
运行hello-world镜像测试
$ sudo docker run hello-world
# 提示Hello from Docker!说明正常。
docker配置文件位置
centos7的docker默认配置文件如下:
[root@localhost ~]# find / -name docker.service
......
/usr/lib/systemd/system/docker.service
[root@localhost ~]#
安装Docker-CE指定版本(可选)
列出可用版本,然后选择并安装:
[root@host2 ~]# yum list docker-ce --showduplicates | sort -r
......
docker-ce.x86_64 3:18.09.0-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
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
......
[root@host2 ~]#
#以安装18.06版本为例
[root@host2 ~]# yum install docker-ce-18.06.1.ce-3.el7
如果要卸载docker,执行以下操作(可选)
卸载docker软件包
$ sudo yum remove docker-ce
卸载Docker后,/var/lib/docker/目录下会保留原Docker的镜像,网络,存储卷等文件. 如果需要全新安装Docker,需要删除/var/lib/docker/目录
$ sudo rm -rf /var/lib/docker
配置国内镜像加速(可选)
鉴于国内网络问题,后续拉取 Docker 镜像比较慢,建议安装 Docker 之后配置国内镜像加速。
添加内核参数
默认配置下,如果在 CentOS 使用 Docker CE 会看到下面的这些警告信息:
WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled
请添加内核配置参数以启用这些功能。
$ sudo tee -a /etc/sysctl.conf <<-EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
然后重新加载 sysctl.conf 即可
$ sudo sysctl -p
阿里云和DaoCloud 为我们提供了免费的国内镜像服务,可以选择其中一个进行配置。
在阿里云或者daocloud.io免费注册一个用户,登录后,找到加速器进行配置:
-
阿里云容器镜像服务:https://cr.console.aliyun.com
-
Daocloud镜像仓库:https://dashboard.daocloud.io/packages
配置阿里云镜像加速:
找到左侧的镜像加速器,按照指导进行配置即可,示例如下:
$ sudo mkdir -p /etc/docker
$ sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://uyah70su.mirror.aliyuncs.com"]
}
EOF
$ sudo systemctl daemon-reload && systemctl restart docker
配置daocloud镜像加速:
找到右上角的小火箭图标,按照指导进行配置即可,示例如下:
$ curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io
docker安装脚本(可选)
将以上命令整理为安装脚本,方便后续一键安装docker-ce。
使用方法:将以下内容保存为.sh脚本文件运行即可,或者从以下链接下载并运行脚本,
运行后将安装最新版docker-ce并配置docker镜像加速。
从github下载并运行脚本:
# wget https://raw.githubusercontent.com/zhwill/LinuxShell/master/Install_docker-ce.sh && bash Install_docker-ce.sh
安装脚本内容:
#!/bin/bash
#this script is for Install the lastest version of docker-ce
#卸载旧版本docker
yum remove -y docker-ce
rm -rf /var/lib/docker
#安装依赖软件包
yum install -y yum-utils \
device-mapper-persistent-data \
lvm2 \
git
#导入yum源,这里使用阿里yum源
yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#安装docker
yum install docker-ce -y
#启动docker
systemctl start docker && systemctl enable docker
#配置镜像加速
##修改内核参数
cat >> /etc/sysctl.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sysctl -p
##配置阿里云镜像加速
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://uyah70su.mirror.aliyuncs.com"]
}
EOF
##或者配置daocloud镜像加速
#curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io >> /dev/null
#重启docker服务
systemctl daemon-reload && systemctl restart docker.service
#查看docker版本
echo
echo "##########################Docker版本###############################"
docker --version
docker-compose工具(可选)
docker-compose负责实现对 Docker 容器集群的快速编排,它允许用户通过一个单独的 docker-compose.yml 模板文件来定义一组相关联的应用容器为一个项目.
#安装epel源
# yum install -y epel-release
#安装docker-compose
# yum install -y docker-compose