CentOS7にDockerをインストールしてみた。

##はじめに
CentOSにDockerをインストールしてみました。
その時の備忘録です。

##インストール手順
<b>1.CentOS7を最小構成でインストールします。</b>

<b>2.古いDockerバージョンがインストールされていた場合、削除します。</b>
※以下の場合、Dockerはインストールされていないので問題なし。

```
# yum remove docker docker-common docker-selinux docker-engine
読み込んだプラグイン:fastestmirror
引数に一致しません: docker
引数に一致しません: docker-common
引数に一致しません: docker-selinux
引数に一致しません: docker-engine
削除対象とマークされたパッケージはありません。
```

<b>3."https://get.docker.com/" より、インストール用のスクリプトを用意します。</b>

```
# curl https://get.docker.com > /tmp/install.sh
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 13847  100 13847    0     0  40595      0 --:--:-- --:--:-- --:--:-- 40726
```

<b>4.インストールスクリプトを実行します。</b>

```
# chmod +x /tmp/install.sh 
# /tmp/install.sh
```

<b>5.インストールできたか確認します。</b>

```
# rpm -qa |grep docker
docker-ce-18.06.0.ce-3.el7.x86_64
```

<b>6./etc/selinux/configを編集し、SELinuxをpermissiveに変更します。</b>

```
# sestatus
SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   permissive
Mode from config file:          permissive
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Max kernel policy version:      31
```

<b>7.Dockerを起動します。</b>

```
# systemctl start docker
```

<b>8.起動したかステイタスを確認します。</b>

```
# systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
   Active: active (running) since 金 2018-07-27 10:36:42 JST; 10min ago
     Docs: https://docs.docker.com
 Main PID: 1386 (dockerd)
    Tasks: 20
   Memory: 178.2M
   CGroup: /system.slice/docker.service
           ├─1386 /usr/bin/dockerd
           └─1392 docker-containerd --config /var/run/docker/containerd/containerd.toml

 7月 27 10:38:44 docker-host dockerd[1386]: time="2018-07-27T10:38:44.011620094+09:00" level=info msg="ignoring event" module=libcontainerd namespace...skDelete"
 7月 27 10:39:54 docker-host dockerd[1386]: time="2018-07-27T10:39:54+09:00" level=info msg="shim docker-containerd-shim started" address="/container... pid=1806
 7月 27 10:39:54 docker-host dockerd[1386]: time="2018-07-27T10:39:54+09:00" level=info msg="shim reaped" id=b4ecedd7d828f7fdcf7b6bb1c9f66e9d81bf8409...7573fedfa
 7月 27 10:39:54 docker-host dockerd[1386]: time="2018-07-27T10:39:54.367235879+09:00" level=info msg="ignoring event" module=libcontainerd namespace...skDelete"
 7月 27 10:40:32 docker-host dockerd[1386]: time="2018-07-27T10:40:32+09:00" level=info msg="shim docker-containerd-shim started" address="/container... pid=1904
 7月 27 10:40:32 docker-host dockerd[1386]: time="2018-07-27T10:40:32+09:00" level=info msg="shim reaped" id=e6155986f55c713fc09cc880fb6464d39e7e8bc7...8c2794e78
 7月 27 10:40:32 docker-host dockerd[1386]: time="2018-07-27T10:40:32.570571706+09:00" level=info msg="ignoring event" module=libcontainerd namespace...skDelete"
 7月 27 10:40:40 docker-host dockerd[1386]: time="2018-07-27T10:40:40+09:00" level=info msg="shim docker-containerd-shim started" address="/container... pid=1989
 7月 27 10:40:40 docker-host dockerd[1386]: time="2018-07-27T10:40:40+09:00" level=info msg="shim reaped" id=c5576487b83cd01fbd325dd0dd5f2aef3ad816c4...f5b895f9f
 7月 27 10:40:40 docker-host dockerd[1386]: time="2018-07-27T10:40:40.150475676+09:00" level=info msg="ignoring event" module=libcontainerd namespace...skDelete"
Hint: Some lines were ellipsized, use -l to show in full.
```

<b>9.OS起動時にDockerを自動起動させる場合は以下のコマンドを実行します。</b>

```
※自動起動設定ON
# systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.

※設定確認
# systemctl is-enabled docker
enabled
```

<b>10.Hello WorldでDockerの動作確認します。</b>

```
※初回実行
# docker run debian echo "Hello World"
Unable to find image 'debian:latest' locally
latest: Pulling from library/debian
55cbf04beb70: Pull complete 
Digest: sha256:f1f61086ea01a72b30c7287adee8c929e569853de03b7c462a8ac75e0d0224c4
Status: Downloaded newer image for debian:latest
Hello World

※2回目実行
# docker run debian echo "Hello World"
Hello World
```

もし、yumでインストールする場合は、以下の公式サイトを参考にしてください。
https://docs.docker.com/install/linux/docker-ce/centos/#set-up-the-repository




以上。