本記事は、Mesosphereが出している以下のPDF資料を元に日本語にしたものである。ただし、直訳ではなく、コマンド実行部分は自分の環境の結果を記したものである。
Install Docker on CentOS
はじめに
CentOS 7.2以降では、XFSに関連するバグが改修されたおかげで、OverlayFSサポートが改善している。
CentOS 7.2のリリースノードは以下のような記載がある。
Only XFS is currently supported for use as a lower layer file system
インストール
CentOSを7.2以降にアップグレードする。
$ sudo yum upgrade --assumeyes --tolerant
$ sudo yum update --assumeyes
カーネルのバージョンが3.10以降であることを確認する。
$ uname -r
3.10.0-327.13.1.el7.x86_64
OverlayFSを起動時にカーネルモジュールとして読みこむようにする。
sudo tee /etc/modules-load.d/overlay.conf <<-'EOF'
overlay
EOF
一度リブートしてカーネルモジュールを再読み込みする。
$ sudo reboot
OverlayFSが有効であることを確認する。
$ lsmod | grep overlay
overlay 42451 0
Dockerのyumリポジトリを設定する。
$ sudo tee /etc/yum.repos.d/docker.repo <<-'EOF'
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/$releasever/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
EOF
Docker Daemonが起動時にOverlayFSを使うように設定する。
$ sudo mkdir -p /etc/systemd/system/docker.service.d && sudo tee
/etc/systemd/system/docker.service.d/override.conf <<- EOF
[Service]
ExecStart=
ExecStart=/usr/bin/docker daemon --storage-driver=overlay -H fd://
EOF
Dockerをインストールし、デーモンを起動する。
$ sudo yum install --assumeyes --tolerant docker-engine
$ sudo systemctl start docker
$ sudo systemctl enable docker
docker info
で確認する。
$ docker info
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 1.11.1
Storage Driver: overlay
Backing Filesystem: xfs
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge null host
Kernel Version: 3.10.0-327.13.1.el7.x86_64
...
ちゃんとStorage Driverがoverlayになっている。