Dockerのストレージドライバの変更


目的

Ubuntu 16.04でDockerのストレージドライバを変更する。

Ubuntu 16.04でDockerをインストールするとaufsなどが
デフォルトで選択されます。本記事ではストレージドライバの変更例を提示します。

変更手順

概要

/etc/default/dockerを変更することを書いている記事も
見られますが、Ubuntuでは原則としてsystemdを利用しているため、
設定ファイルが異なります。
具体的には、"/lib/systemd/system/docker.service"
を対象として変更を行います。

設定ファイルの書き換え

ここではoverlay2を利用するように設定します。
/lib/systemd/system/docker.serviceを変更します。

変更前(一部抜粋)
[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd -H fd://

ExecStartの末尾に利用したいストレージドライバを記述します。
ここではoverlay2を指定します。

変更前(一部抜粋)
[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd -H fd:// --storage-driver=overlay2

設定の適用

設定を反映して、dockerdを再起動します。

dockerd再起動
sudo systemctl daemon-reload
sudo systemctl restart docker

結果の確認

docker infoコマンドを実行してストレージドライバが
任意のものになっていることを確認します。
ここでは、Storage Driverがoverlay2になっています。

dockerの設定確認
Containers: 0
 Running: 0
(省略)
Storage Driver: overlay2
 Backing Filesystem: extfs
Logging Driver: json-file
Cgroup Driver: cgroupfs
(省略)