CentOS7.3に最新のdocker(17.3)をインストールしてみた




2017年3月からDockerのバージョン番号管理が変わりました。
「発行年.月.NO」という表記になり、2017年5月のバージョンでいうと、「17.3.1」という風になっています。

また、コミュニティのリポジトリもCE(コミュニティエディション)とEE(エンタープライズエディション)の2つに分かれました。

CentOS7.3上で、標準インストール版のdockerのバージョンをみてみると、1.12.6です。
そこで、ご本家からリポジトリを入手して、コミュニティからdockerをインストールしてみました。

##CentOS 7.3 標準のdockerパッケージ確認

まず、CentOS7.3の標準パッケージの情報を見てみると、1.12.6と書かれています。

```
# yum info docker
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * base: www.ftp.ne.jp
 * epel: ftp.riken.jp
 * extras: www.ftp.ne.jp
 * updates: www.ftp.ne.jp
利用可能なパッケージ
名前                : docker
アーキテクチャー    : x86_64
エポック            : 2
バージョン          : 1.12.6
リリース            : 16.el7.centos
容量                : 14 M
リポジトリー        : extras/7/x86_64
要約                : Automates deployment of containerized applications
URL                 : https://github.com/docker/docker
ライセンス          : ASL 2.0
```

##リポジトリの入手
wgetでdockerご本家からリポジトリ情報を取得します。
ちなみに、docker-ee.repo にするとエンタープライズ版になるので、注意しましょう。

```
# cd /etc/yum.repos.d/
# wget https://download.docker.com/linux/centos/docker-ce.repo
```

###docker-ce.repo
取得したリポジトリは、このようになっています。

```
# vi docker-ce.repo
[docker-ce-stable]
name=Docker CE Stable - $basearch
baseurl=https://download.docker.com/linux/centos/7/$basearch/stable
enabled=1
gpgcheck=1
gpgkey=https://download.docker.com/linux/centos/gpg

[docker-ce-stable-debuginfo]
name=Docker CE Stable - Debuginfo $basearch
baseurl=https://download.docker.com/linux/centos/7/debug-$basearch/stable
enabled=0
gpgcheck=1
gpgkey=https://download.docker.com/linux/centos/gpg

[docker-ce-stable-source]
name=Docker CE Stable - Sources
baseurl=https://download.docker.com/linux/centos/7/source/stable
enabled=0
gpgcheck=1
gpgkey=https://download.docker.com/linux/centos/gpg

[docker-ce-edge]
name=Docker CE Edge - $basearch
baseurl=https://download.docker.com/linux/centos/7/$basearch/edge
enabled=0
gpgcheck=1
gpgkey=https://download.docker.com/linux/centos/gpg

[docker-ce-edge-debuginfo]
name=Docker CE Edge - Debuginfo $basearch
baseurl=https://download.docker.com/linux/centos/7/debug-$basearch/edge
enabled=0
gpgcheck=1
gpgkey=https://download.docker.com/linux/centos/gpg

[docker-ce-edge-source]
name=Docker CE Edge - Sources
baseurl=https://download.docker.com/linux/centos/7/source/edge
enabled=0
gpgcheck=1
gpgkey=https://download.docker.com/linux/centos/gpg

[docker-ce-test]
name=Docker CE Test - $basearch
baseurl=https://download.docker.com/linux/centos/7/$basearch/test
enabled=0
gpgcheck=1
gpgkey=https://download.docker.com/linux/centos/gpg

[docker-ce-test-debuginfo]
name=Docker CE Test - Debuginfo $basearch
baseurl=https://download.docker.com/linux/centos/7/debug-$basearch/test
enabled=0
gpgcheck=1
gpgkey=https://download.docker.com/linux/centos/gpg

[docker-ce-test-source]
name=Docker CE Test - Sources
baseurl=https://download.docker.com/linux/centos/7/source/test
enabled=0
gpgcheck=1
gpgkey=https://download.docker.com/linux/centos/gpg
```

##標準リポジトリの変更
万が一を考え、CentOSの標準パッケージのdockerはインストールしないように"exclude"設定を追加しておきます。

```
# vim /etc/yum.repos.d/CentOS-Base.repo
[extras]
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
exclude=docker*

# yum clean all
# yum search docker
docker-ce.x86_64 : The open-source application container engine
docker-ce-selinux.noarch : SELinux Policies for the open-source application container engine
```
##インストール

```
# yum install docker-ce
```

##自動起動する場合

```
# systemctl enable docker
```

##起動

```
# systemctl start docker
```

##確認

2017年5月1日現在のバージョン：

```
# docker -v
Docker version 17.03.1-ce, build c6d412e
```
### Imageのダウンロード
```
# docker pull centos
Using default tag: latest
latest: Pulling from library/centos
93857f76ae30: Pull complete
Digest: sha256:4eda692c08e0a065ae91d74e82fff4af3da307b4341ad61fa61771cc4659af60
Status: Downloaded newer image for centos:latest
```

```
# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
centos              latest              a8493f5f50ff        3 weeks ago         192 MB
```

## 注意(2015/5/16 再編集)
docker-ce をインストールしたら、SELinuxをDisabledにしているのに、nottyモードでrootでsshログインできなくなった(ttyモードは、普通にログインできます)。
何か、悪さをしているんじゃないだろうか。
それとも仕様なのだろうか。
Disabledなのに、動きがDisablesじゃないのは、おかしいとは思うんだけれども・・・
仕方がないので、一般ユーザでsudo使うように変更しました。