ホストOS上に、最新のDockerエンジンをインストールします。以下のように、curlコマンドでインストールすることが可能です。ホストOSがプロキシサーバ経由でインターネットにアクセスする場合は、適宜プロキシサーバの環境変数を事前に設定してください。
# export http_proxy=http://proxy.your.site.com:8080 ←適宜プロキシサーバを設定 # export https_proxy=http://proxy.your.site.com:8080 ←適宜プロキシサーバを設定 # curl -sSL https://get.docker.com/ | sh
連載33回でご紹介したのと同様に、「/etc/sysconfig/docker」ファイルを読み込むように設定ファイル「docker.service」を記述します。もし、以下の設定ファイル「docker.service」が「/etc/systemd/system」ディレクトリに存在しない場合は、事前に「/usr/lib/systemd/system」ディレクトリからコピーしておく必要があります。
# cd /etc/systemd/system/ # cp /usr/lib/systemd/system/docker.service . # vi ./docker.service # cat /etc/systemd/system/docker.service |grep -v ^# |grep -v ^$ [Unit] Description=Docker Application Container Engine Documentation=https://docs.docker.com After=network.target [Service] Type=notify EnvironmentFile=-/etc/sysconfig/docker ←設定ファイルを定義 EnvironmentFile=-/etc/sysconfig/docker-storage ←設定ファイルを定義 EnvironmentFile=-/etc/sysconfig/docker-network ←設定ファイルを定義 ExecStart=/usr/bin/dockerd \ ←複数行にわたるため、「\」を追加 $OPTIONS \ ←設定ファイル内で定義される環境変数を追加 $DOCKER_STORAGE_OPTIONS \ ←設定ファイル内で定義される環境変数を追加 $DOCKER_NETWORK_OPTIONS \ ←設定ファイル内で定義される環境変数を追加 $ADD_REGISTRY \ ←設定ファイル内で定義される環境変数を追加 $BLOCK_REGISTRY \ ←設定ファイル内で定義される環境変数を追加 $INSECURE_REGISTRY ←設定ファイル内で定義される環境変数を追加 ExecReload=/bin/kill -s HUP $MAINPID LimitNOFILE=infinity LimitNPROC=infinity LimitCORE=infinity TimeoutStartSec=0 Delegate=yes KillMode=process [Install] WantedBy=multi-user.target
ホストOSのsystemdに、上記の設定ファイルの変更を通知します。
# systemctl daemon-reload
これでDockerデーモン(/usr/bin/dockerd)が、各設定ファイルに記載された文字列をオプションとして認識できるようになりました。次に、Dockerの設定ファイル「/etc/sysconfig/docker-network」内で、プロキシサーバなどを適切に設定しておきます。
# vi /etc/sysconfig/docker-network http_proxy=http://proxy.your.site.com:8080 https_proxy=http://proxy.your.site.com:8080 no_proxy=localhost,172.16.1.100,/var/run/docker.sock
今回は、「/etc/sysconfig/docker」ファイル内の「OPTIONS行」では何も指定しません。
# vi /etc/sysconfig/docker OPTIONS='' ←今回は、オプションを付与しない DOCKER_CERT_PATH=/etc/docker
ホストOSが起動したら、Dockerエンジンのサービスが自動的に起動するよう設定します。
# systemctl restart docker # systemctl enable docker # systemctl status docker
ホストOSの再起動後、Dockerのバージョンを確認します。
# reboot # docker version Client: Version: 1.12.5 API version: 1.24 Go version: go1.6.4 Git commit: 7392c3b Built: Fri Dec 16 02:23:59 2016 OS/Arch: linux/amd64 Server: Version: 1.12.5 API version: 1.24 Go version: go1.6.4 Git commit: 7392c3b Built: Fri Dec 16 02:23:59 2016 OS/Arch: linux/amd64
Copyright © ITmedia, Inc. All Rights Reserved.