本文档是在CentOS7.6操作系统环境下搭建的Docker环境,搭建步骤如下,以下搭建分为在线搭建及离线搭建两种方式,但离线搭建也需通过在线方式提前下载好安装包才能进行安装;

具体步骤如下:

在线搭建

1、关闭防火墙、selinux

setenforce 0

sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

systemctl stop firewalld.service && systemctl disable firewalld.service

 

2、配置docker yum 源,使用阿里云提供国内yum源,下载速度更快;

1)yum -y install yum-utils #工具必须安装,需要使用yum-config-manager

2)cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak

3)wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

4)sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

5)yum clean all

6)yum makecache

 

3、卸载操作系统自带的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 \

container*

4、通过yum list命令查yum源上的docker版本信息

yum list docker-ce --showduplicates | sort -r

 

5、为了方便安装,使用以下参数及命令进行安装docker

1) 声明版本号:export docker_version=18.06.3

2)版本命令声明:version=$(yum list docker-ce.x86_64 --showduplicates | sort -r|grep ${docker_version}|awk '{print $2}')

3)通过命令安装docker-ce、docker-ce-selinux插件:sudo yum -y install --setopt=obsoletes=0 docker-ce-${version} docker-ce-selinux-${version}# 如果已经安装高版本Docker,可进行降级安装(可选)

 

6、设置开机启动

sudo systemctl enable docker

 

7、启动docker

sudo systemctl start docker

 

8、查看docker状态

systemctl status docker

 

docker镜像仓库配置(阿里云仓库)

为了能够提升镜像的下载速度,可以设置国内的仓库代理,这里使用阿里云的镜像仓库代理地址进行镜像下载,设置方式如下:

# cat /etc/docker/daemon.json


{

"registry-mirrors": ["https://7bezldxe.mirror.aliyuncs.com/"],

"max-concurrent-downloads": 3,

"max-concurrent-uploads": 5,

"storage-driver": "overlay2",

"storage-opts": ["overlay2.override_kernel_check=true"],

  "log-driver": "json-file",

  "log-opts": {

      "max-size": "100m",

      "max-file": "3"

    }

}

 

#配置镜像下载和上传并发数#

-------

"max-concurrent-downloads": 3,

"max-concurrent-uploads": 5 

-------

 

#配置镜像加速地址#

Rancher从v1.6.15开始到v2.x.x,Rancher系统相关的所有镜像(包括1.6.x上的K8S镜像)都托管在Dockerhub仓库。Dockerhub节点在国外,国内直接拉取镜像会有些缓慢。为了加速镜像的下载,可以给Docker配置国内的镜像地址,可以设置多个registry-mirrors地址,以数组形式书写,地址需要添加协议头(https或者http)

-------

{

"registry-mirrors": ["https://7bezldxe.mirror.aliyuncs.com/","https://IP:PORT/"]

}

-------

 

#(option)配置insecure-registries私有仓库#

Docker默认只信任TLS加密的仓库地址(https),所有非https仓库默认无法登陆也无法拉取镜像。insecure-registries字面意思为不安全的仓库,通过添加这个参数对非https仓库进行授信。可以设置多个insecure-registries地址,以数组形式书写,地址不能添加协议头(http)

-------

{

"insecure-registries": ["192.168.1.100","IP:PORT"]

}

-------

 

#配置Docker存储驱动#

OverlayFS是一个新一代的联合文件系统,类似于AUFS,但速度更快,实现更简单。Docker为OverlayFS提供了两个存储驱动程序:旧版的overlay,新版的overlay2(更稳定)。

先决条件:

* overlay2: Linux内核版本4.0或更高版本,或使用内核版本3.10.0-514+的RHEL或CentOS。

* overlay: 主机Linux内核版本3.18+

* 支持的磁盘文件系统

ext4(仅限RHEL 7.1)

xfs(RHEL7.2及更高版本),需要启用d_type=true。 >具体详情参考 Docker Use the OverlayFS storage driver

-------

{

"storage-driver": "overlay2",

"storage-opts": ["overlay2.override_kernel_check=true"]

}

-------

 

#配置日志驱动#

-------

{

"log-driver": "json-file",

"log-opts": {

"max-size": "100m",

"max-file": "3"

}

}

-------

 

 


 

详细解释docker配置注意事项

对于通过systemd来管理服务的系统(比如CentOS7.X), Docker有两处可以配置参数:

一个是docker.service服务配置文件,一个是Docker daemon配置文件daemon.json

1. docker.service

对于CentOS系统,docker.service默认位于/usr/lib/systemd/system/docker.service;

对于Ubuntu系统,docker.service默认位于/lib/systemd/system/docker.service

2. daemon.json

daemon.json默认位于/etc/docker/daemon.json,如果没有可手动创建,基于systemd管理的系统都是相同的路径。通过修改daemon.json来改过Docker配置,也是Docker官方推荐的方法。

 

 

离线安装docker

跟据以上在线安装步骤配置yum源,提前在互联网准备好离线安装包,可使用

1、提前外网下载离线安装包

export docker_version=18.06.3

version=$(yum list docker-ce.x86_64 --showduplicates | sort -r|grep ${docker_version}|awk '{print $2}')

sudo yum install --downloadonly --downloaddir=/home/docker docker-ce-${version} docker-ce-selinux-${version}

 

2、将离线文件上传至需安装的服务器,进入相应目录,执行

yum -y localinstall docker-ce-*

 

3、安装后,启动,并设置开机自启动

systemctl start docker && systemctl enable docker