theboyaply
theboyaply
发布于 2020-03-09 / 533 阅读
0
0

Centos中安装docker

阿里镜像源yum安装方式

>本站示例<

>阿里官方文档<

Dockers安装

参考:

https://docs.docker.com/install/linux/docker-ce/centos/
https://vuepress.mirror.docker-practice.com/install/
https://yq.aliyun.com/articles/110806

Docker 分为 CE 和 EE 两大版本。CE 即社区版(免费,支持周期 7 个月),EE 即企业版,强调安全,付费使用,支持周期 24 个月。

Docker CE 分为 stable testnightly 三个更新频道。

官方网站上有各种环境下的 安装指南,这里主要介绍 Docker CE 在 Linux 环境下如何安装。

系统要求

Docker CE 支持 64 位版本 CentOS 7,并且要求内核版本不低于 3.10。 CentOS 7 满足最低内核的要求,但由于内核版本比较低,部分功能(如 overlay2 存储层驱动)无法使用,并且部分功能可能不太稳定。

卸载旧版本

旧版本的 Docker 称为 docker 或者 docker-engine,使用以下命令卸载旧版本:

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

使用脚本自动安装(仅使用于公网环境)

执行这个命令后,脚本就会自动的将一切准备工作做好,并且把 Docker CE 的稳定(stable)版本安装在系统中。

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

使用yum安装

安装依赖包

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

添加 yum 软件源

# 鉴于国内网络问题,建议使用国内源。阿里云源(本人常用)
sudo yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# 官方源
# sudo yum-config-manager \
#    --add-repo \
#    https://download.docker.com/linux/centos/docker-ce.repo

更新 yum 软件源缓存,并安装 Docker-ce

sudo yum makecache fast
sudo yum -y install docker-ce

启动/关闭Docker

# 启动
systemctl start docker
# 关闭
systemctl stop docker
# (或者) 
# sudo service docker start
# sudo service docker stop

开启/关闭开机启动(可选)

# 开启开机启动
sudo systemctl enable docker
# 关闭开机启动
sudo systemctl disable docker

配置镜像加速

国内从 Docker Hub 拉取镜像有时会遇到困难,此时可以配置镜像加速器。

配置镜像加速可参考另一篇文章。点我直达

安装校验

# 使用dockers version 查看docker版本信息
[root@localhost ~]# docker version
Client: Docker Engine - Community
 Version:           19.03.5
 API version:       1.40
 Go version:        go1.12.12
 Git commit:        633a0ea
 Built:             Wed Nov 13 07:25:41 2019
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.5
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.12
  Git commit:       633a0ea
  Built:            Wed Nov 13 07:24:18 2019
  OS/Arch:          linux/amd64
  Experimental:     false

建立 Docker 用户组

默认情况下,docker 命令会使用 Unix socket 与 Docker 引擎通讯。而只有 root 用户和 docker 组的用户才可以访问 Docker 引擎的 Unix socket。出于安全考虑,一般 Linux 系统上不会直接使用 root 用户。因此,更好地做法是将需要使用 docker 的用户加入 docker 用户组。

# 建立 docker 组
sudo groupadd docker

# 将当前用户加入 docker 组
sudo usermod -aG docker $USER

添加内核参数

本人目前还没有遇见过这种情况。

如果在 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

评论