【Docker】CentOS7 安装 Docker18.03.1

系统环境

Docker 要求 CentOS 系统的内核版本高于 3.10+

$ uname -r
3.10.0-693.el7.x86_64

卸载旧版本


$ 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

依赖安装

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

说明
yum-utils提供了yum-config-manager实用程序
device-mapper-persistent-data和lvm2需要devicemapper存储驱动程序

设置稳定的数据仓库

注意:因国外网站镜像被墙,使用阿里镜像

$ 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

启用test和edge 【可选】

这些存储库包含在上面的docker.repo文件中,但默认情况下禁用。 您可以将它们与稳定版本库一起启用。

$ sudo yum-config-manager --enable docker-ce-edge
$ sudo yum-config-manager --enable docker-ce-test

可以通过运行带有--disable标志的yum-config-manager命令来禁用edge或test库。 要重新启用它,请使用--enable标志。 以下命令禁用edge存储库。
$ sudo yum-config-manager --disable docker-ce-edge

Yum 安装Docker CE

注意:
在生产系统上,您应该安装特定版本的Docker CE,而不是始终使用最新版本。
列出可用的版本。 此示例使用排序-r命令对结果进行排序,版本号由最高到最低。
$ yum list docker-ce --showduplicates | sort -r

使用官方镜像问题

$ sudo yum-config-manager \
>     --add-repo \
>     https://download.docker.com/linux/centos/docker-ce.repo
已加载插件:fastestmirror
adding repo from: https://download.docker.com/linux/centos/docker-ce.repo
grabbing file https://download.docker.com/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo
repo saved to /etc/yum.repos.d/docker-ce.repo

解决方式

$ ll
总用量 32
-rw-r--r--. 1 root root 2424 6月   2 07:42 docker-ce.repo

由于国内访问不到docker官方镜像

第一种(不可行):
删除 docker-ce.repo
[gaodevops@localhost yum.repos.d]$ yum list docker-ce --showduplicates | sort -r
错误:没有匹配的软件包可以列出
已加载插件:fastestmirror
updates: mirrors.aliyun.com
extras: mirrors.aliyun.com
Determining fastest mirrors
base: mirrors.aliyun.com

第二种(可行)

$ sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
已加载插件:fastestmirror
adding repo from: http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
grabbing file http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo
repo saved to /etc/yum.repos.d/docker-ce.repo
$ sudo yum install docker-ce  #由于repo中默认只开启stable仓库,故这里安装的是最新稳定版18.03.0
$ sudo yum install <xxx>  # 例如:sudo yum install docker-ce-18.03.0.ce

启动并加入开机启动

$ sudo systemctl start docker
$ sudo systemctl enable docker
[gaodevops@localhost yum.repos.d]$ sudo systemctl start docker
[sudo] gaodevops 的密码:
[gaodevops@localhost yum.repos.d]$ sudo systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.

验证安装是否成功

有client和service两部分表示docker安装启动都成功了

$ docker version
Client:
 Version:      18.03.1-ce
 API version:  1.37
 Go version:   go1.9.5
 Git commit:   9ee9f40
 Built:        Thu Apr 26 07:20:16 2018
 OS/Arch:      linux/amd64
 Experimental: false
 Orchestrator: swarm

Server:
 Engine:
  Version:      18.03.1-ce
  API version:  1.37 (minimum version 1.12)
  Go version:   go1.9.5
  Git commit:   9ee9f40
  Built:        Thu Apr 26 07:23:58 2018
  OS/Arch:      linux/amd64
  Experimental: false

用户和权限

$ groups docker
groups: docker: no such user

$ sudo usermod –aG docker gaodevops   //未成功,使用下面的方式
$ sudo usermod -aG docker $USER
$ newgrp - docker

刷新docker成员
newgrp – docker

$ sudo usermod -aG docker $USER
$ newgrp - docker

用$ whoami 来查看当前用户

$ whoami
gaodevops

镜像

官方
https://hub.docker.com/explore/
阿里云
https://dev.aliyun.com/search.html

阿里云 自己的镜像

........

gaodevops