【Docker】CentOS7.x上docker的安装方式

一、实验背景

现在docker将版本分为企业EE版以及社区CE版。

Docker CE 在 17.03 版本之前叫 Docker Engine,版本号范围: 0.1.0 ~ 1.13.1。

从 17.03 版本开始新的发布方案 ( 命名变动 / 发布周期的改善 / 版本号方案变更 )。

在 2017 年 3 月 2 日, docker 团队宣布企业版 Docker Enterprise Edition ( EE ) 发布. 为了一致, 免费的 Docker Engine 改名为 Docker Community Edition ( CE ), 并且采用基于时间的版本号方案. 就在这一天, Docker EE 和 Docker CE 的 17.03 版本发布, 这也是第一个采用新的版本号方案的版本。

Docker CE/EE 每个季度发布一次季度版本, 也就是说每年会发布 4 个季度版本, 17.03, 17.06, 17.09, 17.12 就是 2017 年的 4 个季度版本的版本号, 同时 Docker CE 每个月还会发布一个 EDGE 版本,比如 17.04, 17.05, 17.07, 17.08, 17.10, 17.11,Docker CE 季度版本自发布后会有 4 个月的维护期。



CentOS7.x上的docker安装,主要有两种方式:rpm yum安装和二进制文件安装,其他Linux发行版安装方式类似。

1.Docker的rpm yum安装需要添加docker官方,然后安装相应的docker社区版,如果内网离线安装的化,需要先在联网机器上下载主包及其依赖,在内网机器搭建本地yum源,执行安装。

2.Docker的二进制文件安装就省事多了,直接下载官方二进制安装包(无需编译,解压即用),编写服务的启动脚本或者Unit文件。

下面我们分别介绍两种安装方式,感受一下安装差异。


二、Docker的yum安装

# yum -y install  yum-utils device-mapper-persistent-data lvm2

# yum-config-manager  --add-repo    https://download.docker.com/linux/centos/docker-ce.repo

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

#  yum -y install docker-ce-18.06.0.ce

# systemctl  start docker

# systemctl  status docker

# systemctl  enable  docker

# docker version


三、Docker的二进制安装

下载docker二进制安装包

# yum  -y install   wget 

# wget   https://download.docker.com/linux/static/stable/x86_64/docker-18.06.0-ce.tgz


#  tar -zxf   docker-18.06.0-ce.tgz

#  ll   ./docker

# cp ./docker/docker*   /usr/bin

 创建docker服务的unit文件

# vim  /etc/systemd/system/docker.service

##############################################################

[Unit]

Description=Docker Application Container Engine

Documentation=https://docs.docker.com

After=network-online.target firewalld.service

Wants=network-online.target

[Service]

Type=notify

# the default is not to use systemd for cgroups because the delegate issues still

# exists and systemd currently does not support the cgroup feature set required

# for containers run by docker

ExecStart=/usr/bin/dockerd

ExecReload=/bin/kill -s HUP $MAINPID

# Having non-zero Limit*s causes performance problems due to accounting overhead

# in the kernel. We recommend using cgroups to do container-local accounting.

LimitNOFILE=infinity

LimitNPROC=infinity

LimitCORE=infinity

# Uncomment TasksMax if your systemd version supports it.

# Only systemd 226 and above support this version.

#TasksMax=infinity

TimeoutStartSec=0

# set delegate yes so that systemd does not reset the cgroups of docker containers

Delegate=yes

# kill only the docker process, not all processes in the cgroup

KillMode=process

# restart the docker process if it exits prematurely

Restart=on-failure

StartLimitBurst=3

StartLimitInterval=60s

[Install]

WantedBy=multi-user.target

##############################################

启动docker服务并设为开机自

# systemctl daemon-reload

# systemctl start docker

# systemctl  status docker

# systemctl enable docker

# docker  info

# docker  version



四、设置镜像加速


#  curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io

#  systemctl restart docker


五、参考


https://download.docker.com/linux/static/edge/x86_64

https://docs.docker.com/engine/reference/commandline/dockerd

https://github.com/moby/moby/releases

https://github.com/moby/moby/blob/master/contrib/init/systemd/docker.service


moby/moby

https://github.com/moby/moby/blob/master/CHANGELOG.md

Docker Engine release notes

https://docs.docker.com/release-notes/docker-engine

About Docker Engine - Community

https://docs.docker.com/install

Announcing Docker Enterprise Edition

https://blog.docker.com/2017/03/docker-enterprise-edition

你可能感兴趣的:(【Docker】CentOS7.x上docker的安装方式)