OSS Fan ~OSSでLinuxサーバ構築~

作成日: 2016/08/20

OSSでLinuxサーバ構築

Docker 1.10.3をCentOS 7.2へインストール

トップページOSSでLinuxサーバ構築 > Docker 1.10.3をCentOS 7.2へインストール
このエントリーをはてなブックマークに追加

概要

 Docker 1.10.3をCentOS 7.2へインストールします。 今回はyumを利用して手軽にインストールします。 Dockerはextrasリポジトリに含まれていますので、特にyumの設定を追加しなくてもインストールできました。

構成

サーバ構成

OSバージョン

CentOS 7.2.1511 x86_64

ソフトウェア・パッケージ一覧

  • docker-1.10.3-46.el7.centos.10.x86_64.rpm
  • audit-libs-python-2.4.1-5.el7.x86_64.rpm
  • docker-common-1.10.3-46.el7.centos.10.x86_64.rpm
  • libcgroup-0.41-8.el7.x86_64.rpm
  • docker-selinux-1.10.3-46.el7.centos.10.x86_64.rpm
  • libsemanage-python-2.1.10-18.el7.x86_64.rpm
  • libseccomp-2.2.1-1.el7.x86_64.rpm
  • oci-systemd-hook-0.1.4-4.git41491a3.el7.x86_64.rpm
  • python-IPy-0.75-6.el7.noarch.rpm
  • checkpolicy-2.1.12-6.el7.x86_64.rpm
  • setools-libs-3.3.7-46.el7.x86_64.rpm
  • oci-register-machine-0-1.7.git31bbcd2.el7.x86_64.rpm
  • policycoreutils-python-2.2.5-20.el7.x86_64.rpm

サーバ構築

インストール

 Dockerのパッケージ名は「docker」です。 以下のとおりyumでインストールを実行します。

# yum install docker
読み込んだプラグイン:fastestmirror, langpacks
base                                                                                                                 | 3.6 kB  00:00:00
extras                                                                                                               | 3.4 kB  00:00:00
updates                                                                                                              | 3.4 kB  00:00:00
(1/4): base/7/x86_64/group_gz                                                                                        | 155 kB  00:00:00
(2/4): extras/7/x86_64/primary_db                                                                                    | 160 kB  00:00:03
(3/4): updates/7/x86_64/primary_db                                                                                   | 6.5 MB  00:00:06
(4/4): base/7/x86_64/primary_db                                                                                      | 5.3 MB  00:00:15
Determining fastest mirrors
 * base: ftp.riken.jp
 * extras: ftp.riken.jp
 * updates: ftp.riken.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ docker.x86_64 0:1.10.3-46.el7.centos.10 を インストール
--> 依存性の処理をしています: docker-common = 1.10.3-46.el7.centos.10 のパッケージ: docker-1.10.3-46.el7.centos.10.x86_64
--> 依存性の処理をしています: oci-systemd-hook >= 1:0.1.4-4 のパッケージ: docker-1.10.3-46.el7.centos.10.x86_64
--> 依存性の処理をしています: oci-register-machine >= 1:0-1.7 のパッケージ: docker-1.10.3-46.el7.centos.10.x86_64
--> 依存性の処理をしています: docker-selinux >= 1.10.3-46.el7.centos.10 のパッケージ: docker-1.10.3-46.el7.centos.10.x86_64
--> 依存性の処理をしています: libseccomp.so.2()(64bit) のパッケージ: docker-1.10.3-46.el7.centos.10.x86_64
--> トランザクションの確認を実行しています。
---> パッケージ docker-common.x86_64 0:1.10.3-46.el7.centos.10 を インストール
---> パッケージ docker-selinux.x86_64 0:1.10.3-46.el7.centos.10 を インストール
--> 依存性の処理をしています: policycoreutils-python のパッケージ: docker-selinux-1.10.3-46.el7.centos.10.x86_64
---> パッケージ libseccomp.x86_64 0:2.2.1-1.el7 を インストール
---> パッケージ oci-register-machine.x86_64 1:0-1.7.git31bbcd2.el7 を インストール
---> パッケージ oci-systemd-hook.x86_64 1:0.1.4-4.git41491a3.el7 を インストール
--> トランザクションの確認を実行しています。
---> パッケージ policycoreutils-python.x86_64 0:2.2.5-20.el7 を インストール
--> 依存性の処理をしています: libsemanage-python >= 2.1.10-1 のパッケージ: policycoreutils-python-2.2.5-20.el7.x86_64
--> 依存性の処理をしています: audit-libs-python >= 2.1.3-4 のパッケージ: policycoreutils-python-2.2.5-20.el7.x86_64
--> 依存性の処理をしています: python-IPy のパッケージ: policycoreutils-python-2.2.5-20.el7.x86_64
--> 依存性の処理をしています: libqpol.so.1(VERS_1.4)(64bit) のパッケージ: policycoreutils-python-2.2.5-20.el7.x86_64
--> 依存性の処理をしています: libqpol.so.1(VERS_1.2)(64bit) のパッケージ: policycoreutils-python-2.2.5-20.el7.x86_64
--> 依存性の処理をしています: libcgroup のパッケージ: policycoreutils-python-2.2.5-20.el7.x86_64
--> 依存性の処理をしています: libapol.so.4(VERS_4.0)(64bit) のパッケージ: policycoreutils-python-2.2.5-20.el7.x86_64
--> 依存性の処理をしています: checkpolicy のパッケージ: policycoreutils-python-2.2.5-20.el7.x86_64
--> 依存性の処理をしています: libqpol.so.1()(64bit) のパッケージ: policycoreutils-python-2.2.5-20.el7.x86_64
--> 依存性の処理をしています: libapol.so.4()(64bit) のパッケージ: policycoreutils-python-2.2.5-20.el7.x86_64
--> トランザクションの確認を実行しています。
---> パッケージ audit-libs-python.x86_64 0:2.4.1-5.el7 を インストール
---> パッケージ checkpolicy.x86_64 0:2.1.12-6.el7 を インストール
---> パッケージ libcgroup.x86_64 0:0.41-8.el7 を インストール
---> パッケージ libsemanage-python.x86_64 0:2.1.10-18.el7 を インストール
---> パッケージ python-IPy.noarch 0:0.75-6.el7 を インストール
---> パッケージ setools-libs.x86_64 0:3.3.7-46.el7 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

============================================================================================================================================
 Package                                 アーキテクチャー        バージョン                                   リポジトリー             容量
============================================================================================================================================
インストール中:
 docker                                  x86_64                  1.10.3-46.el7.centos.10                      extras                  9.5 M
依存性関連でのインストールをします:
 audit-libs-python                       x86_64                  2.4.1-5.el7                                  base                     69 k
 checkpolicy                             x86_64                  2.1.12-6.el7                                 base                    247 k
 docker-common                           x86_64                  1.10.3-46.el7.centos.10                      extras                   61 k
 docker-selinux                          x86_64                  1.10.3-46.el7.centos.10                      extras                   78 k
 libcgroup                               x86_64                  0.41-8.el7                                   base                     64 k
 libseccomp                              x86_64                  2.2.1-1.el7                                  base                     49 k
 libsemanage-python                      x86_64                  2.1.10-18.el7                                base                     94 k
 oci-register-machine                    x86_64                  1:0-1.7.git31bbcd2.el7                       extras                  929 k
 oci-systemd-hook                        x86_64                  1:0.1.4-4.git41491a3.el7                     extras                   27 k
 policycoreutils-python                  x86_64                  2.2.5-20.el7                                 base                    435 k
 python-IPy                              noarch                  0.75-6.el7                                   base                     32 k
 setools-libs                            x86_64                  3.3.7-46.el7                                 base                    485 k

トランザクションの要約
============================================================================================================================================
インストール  1 パッケージ (+12 個の依存関係のパッケージ)

総ダウンロード容量: 12 M
インストール容量: 52 M
Is this ok [y/d/N]: y ←入力する
Downloading packages:
警告: /var/cache/yum/x86_64/7/base/packages/audit-libs-python-2.4.1-5.el7.x86_64.rpm: ヘッダー V3 RSA/SHA256 Signature、鍵 ID f4a80eb5: NOKEY
audit-libs-python-2.4.1-5.el7.x86_64.rpm の公開鍵がインストールされていません
(1/13): audit-libs-python-2.4.1-5.el7.x86_64.rpm                                                                     |  69 kB  00:00:00
docker-common-1.10.3-46.el7.centos.10.x86_64.rpm の公開鍵がインストールされていません
(2/13): docker-common-1.10.3-46.el7.centos.10.x86_64.rpm                                                             |  61 kB  00:00:00
(3/13): libcgroup-0.41-8.el7.x86_64.rpm                                                                              |  64 kB  00:00:00
(4/13): docker-selinux-1.10.3-46.el7.centos.10.x86_64.rpm                                                            |  78 kB  00:00:00
(5/13): libsemanage-python-2.1.10-18.el7.x86_64.rpm                                                                  |  94 kB  00:00:00
(6/13): libseccomp-2.2.1-1.el7.x86_64.rpm                                                                            |  49 kB  00:00:00
(7/13): oci-systemd-hook-0.1.4-4.git41491a3.el7.x86_64.rpm                                                           |  27 kB  00:00:00
(8/13): python-IPy-0.75-6.el7.noarch.rpm                                                                             |  32 kB  00:00:00
(9/13): checkpolicy-2.1.12-6.el7.x86_64.rpm                                                                          | 247 kB  00:00:01
(10/13): setools-libs-3.3.7-46.el7.x86_64.rpm                                                                        | 485 kB  00:00:00
(11/13): oci-register-machine-0-1.7.git31bbcd2.el7.x86_64.rpm                                                        | 929 kB  00:00:01
(12/13): policycoreutils-python-2.2.5-20.el7.x86_64.rpm                                                              | 435 kB  00:00:01
(13/13): docker-1.10.3-46.el7.centos.10.x86_64.rpm                                                                   | 9.5 MB  00:00:10
--------------------------------------------------------------------------------------------------------------------------------------------
合計                                                                                                        1.1 MB/s |  12 MB  00:00:10
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 から鍵を取得中です。
Importing GPG key 0xF4A80EB5:
 Userid     : "CentOS-7 Key (CentOS 7 Official Signing Key) <security@centos.org>"
 Fingerprint: 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
 Package    : centos-release-7-2.1511.el7.centos.2.10.x86_64 (@anaconda)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
上記の処理を行います。よろしいでしょうか? [y/N]y ←入力する
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  インストール中          : audit-libs-python-2.4.1-5.el7.x86_64                                                                       1/13
  インストール中          : 1:oci-register-machine-0-1.7.git31bbcd2.el7.x86_64                                                         2/13
  インストール中          : docker-common-1.10.3-46.el7.centos.10.x86_64                                                               3/13
  インストール中          : libsemanage-python-2.1.10-18.el7.x86_64                                                                    4/13
  インストール中          : libseccomp-2.2.1-1.el7.x86_64                                                                              5/13
  インストール中          : python-IPy-0.75-6.el7.noarch                                                                               6/13
  インストール中          : checkpolicy-2.1.12-6.el7.x86_64                                                                            7/13
  インストール中          : 1:oci-systemd-hook-0.1.4-4.git41491a3.el7.x86_64                                                           8/13
  インストール中          : libcgroup-0.41-8.el7.x86_64                                                                                9/13
  インストール中          : setools-libs-3.3.7-46.el7.x86_64                                                                          10/13
  インストール中          : policycoreutils-python-2.2.5-20.el7.x86_64                                                                11/13
  インストール中          : docker-selinux-1.10.3-46.el7.centos.10.x86_64                                                             12/13
  インストール中          : docker-1.10.3-46.el7.centos.10.x86_64                                                                     13/13
  検証中                  : setools-libs-3.3.7-46.el7.x86_64                                                                           1/13
  検証中                  : libcgroup-0.41-8.el7.x86_64                                                                                2/13
  検証中                  : docker-1.10.3-46.el7.centos.10.x86_64                                                                      3/13
  検証中                  : 1:oci-systemd-hook-0.1.4-4.git41491a3.el7.x86_64                                                           4/13
  検証中                  : checkpolicy-2.1.12-6.el7.x86_64                                                                            5/13
  検証中                  : python-IPy-0.75-6.el7.noarch                                                                               6/13
  検証中                  : libseccomp-2.2.1-1.el7.x86_64                                                                              7/13
  検証中                  : libsemanage-python-2.1.10-18.el7.x86_64                                                                    8/13
  検証中                  : docker-common-1.10.3-46.el7.centos.10.x86_64                                                               9/13
  検証中                  : 1:oci-register-machine-0-1.7.git31bbcd2.el7.x86_64                                                        10/13
  検証中                  : docker-selinux-1.10.3-46.el7.centos.10.x86_64                                                             11/13
  検証中                  : policycoreutils-python-2.2.5-20.el7.x86_64                                                                12/13
  検証中                  : audit-libs-python-2.4.1-5.el7.x86_64                                                                      13/13

インストール:
  docker.x86_64 0:1.10.3-46.el7.centos.10

依存性関連をインストールしました:
  audit-libs-python.x86_64 0:2.4.1-5.el7                              checkpolicy.x86_64 0:2.1.12-6.el7
  docker-common.x86_64 0:1.10.3-46.el7.centos.10                      docker-selinux.x86_64 0:1.10.3-46.el7.centos.10
  libcgroup.x86_64 0:0.41-8.el7                                       libseccomp.x86_64 0:2.2.1-1.el7
  libsemanage-python.x86_64 0:2.1.10-18.el7                           oci-register-machine.x86_64 1:0-1.7.git31bbcd2.el7
  oci-systemd-hook.x86_64 1:0.1.4-4.git41491a3.el7                    policycoreutils-python.x86_64 0:2.2.5-20.el7
  python-IPy.noarch 0:0.75-6.el7                                      setools-libs.x86_64 0:3.3.7-46.el7

完了しました!

設定

(1) Dockerの起動

 インストール後はDockerが停止しているので、起動します。

# systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled) ←自動起動無効
   Active: inactive (dead) ←停止
     Docs: http://docs.docker.com
# systemctl start docker
# 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 木 2016-08-18 21:39:57 JST; 7s ago ←起動
     Docs: http://docs.docker.com
 Main PID: 2380 (docker-current)
   CGroup: /system.slice/docker.service
           mq2380 /usr/bin/docker-current daemon --exec-opt native.cgroupdriver=systemd --selinux-enabled --log-driver=journald --storage...

 8月 18 21:39:57 mirai-ap04 docker-current[2380]: time="2016-08-18T21:39:57.559408426+09:00" level=info msg="Graph migration to co...conds"
 8月 18 21:39:57 mirai-ap04 docker-current[2380]: time="2016-08-18T21:39:57.585081359+09:00" level=warning msg="Running modprobe bridge ...
 8月 18 21:39:57 mirai-ap04 docker-current[2380]: time="2016-08-18T21:39:57.610946991+09:00" level=info msg="Firewalld running: false"
 8月 18 21:39:57 mirai-ap04 docker-current[2380]: time="2016-08-18T21:39:57.677396729+09:00" level=info msg="Default bridge (docke...dress"
 8月 18 21:39:57 mirai-ap04 docker-current[2380]: time="2016-08-18T21:39:57.826190032+09:00" level=info msg="Loading containers: start."
 8月 18 21:39:57 mirai-ap04 docker-current[2380]: time="2016-08-18T21:39:57.826242247+09:00" level=info msg="Loading containers: done."
 8月 18 21:39:57 mirai-ap04 docker-current[2380]: time="2016-08-18T21:39:57.826254593+09:00" level=info msg="Daemon has completed ...ation"
 8月 18 21:39:57 mirai-ap04 docker-current[2380]: time="2016-08-18T21:39:57.826268143+09:00" level=info msg="Docker daemon" commit...1.10.3
 8月 18 21:39:57 mirai-ap04 systemd[1]: Started Docker Application Container Engine.
 8月 18 21:39:57 mirai-ap04 docker-current[2380]: time="2016-08-18T21:39:57.830853212+09:00" level=info msg="API listen on /var/ru....sock"
Hint: Some lines were ellipsized, use -l to show in full.

(2) Dockerの自動起動設定

 Linuxの起動に合わせてDockerが自動で起動するよう設定します。

# systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
# systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) ←自動起動有効
   Active: active (running) since 木 2016-08-18 21:39:57 JST; 1min 3s ago ←起動
     Docs: http://docs.docker.com
 Main PID: 2380 (docker-current)
   CGroup: /system.slice/docker.service
           mq2380 /usr/bin/docker-current daemon --exec-opt native.cgroupdriver=systemd --selinux-enabled --log-driver=journald --storage...

 8月 18 21:39:57 mirai-ap04 docker-current[2380]: time="2016-08-18T21:39:57.559408426+09:00" level=info msg="Graph migration to co...conds"
 8月 18 21:39:57 mirai-ap04 docker-current[2380]: time="2016-08-18T21:39:57.585081359+09:00" level=warning msg="Running modprobe bridge ...
 8月 18 21:39:57 mirai-ap04 docker-current[2380]: time="2016-08-18T21:39:57.610946991+09:00" level=info msg="Firewalld running: false"
 8月 18 21:39:57 mirai-ap04 docker-current[2380]: time="2016-08-18T21:39:57.677396729+09:00" level=info msg="Default bridge (docke...dress"
 8月 18 21:39:57 mirai-ap04 docker-current[2380]: time="2016-08-18T21:39:57.826190032+09:00" level=info msg="Loading containers: start."
 8月 18 21:39:57 mirai-ap04 docker-current[2380]: time="2016-08-18T21:39:57.826242247+09:00" level=info msg="Loading containers: done."
 8月 18 21:39:57 mirai-ap04 docker-current[2380]: time="2016-08-18T21:39:57.826254593+09:00" level=info msg="Daemon has completed ...ation"
 8月 18 21:39:57 mirai-ap04 docker-current[2380]: time="2016-08-18T21:39:57.826268143+09:00" level=info msg="Docker daemon" commit...1.10.3
 8月 18 21:39:57 mirai-ap04 systemd[1]: Started Docker Application Container Engine.
 8月 18 21:39:57 mirai-ap04 docker-current[2380]: time="2016-08-18T21:39:57.830853212+09:00" level=info msg="API listen on /var/ru....sock"
Hint: Some lines were ellipsized, use -l to show in full.

 以上でインストールが終了したので、Dockerを利用することができます。

動作テスト

Dockerのバージョン確認

 インストールしたDockerのバージョンを確認します。

# docker -v
Docker version 1.10.3, build d381c64-unsupported

Dockerのバージョン情報の詳細やビルドを確認

 Dockerのクライアント、サーバのバージョン情報の詳細やビルド等を確認します。

# docker version
Client:
 Version:         1.10.3
 API version:     1.22
 Package version: docker-common-1.10.3-46.el7.centos.10.x86_64
 Go version:      go1.6.3
 Git commit:      d381c64-unsupported
 Built:           Thu Aug  4 13:21:17 2016
 OS/Arch:         linux/amd64

Server:
 Version:         1.10.3
 API version:     1.22
 Package version: docker-common-1.10.3-46.el7.centos.10.x86_64
 Go version:      go1.6.3
 Git commit:      d381c64-unsupported
 Built:           Thu Aug  4 13:21:17 2016
 OS/Arch:         linux/amd64

Dockerの管理情報確認

 Dockerの管理情報を確認します。 インストールした直後なので、コンテナやイメージは存在しません(0件)。

# docker info
Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 0
Server Version: 1.10.3
Storage Driver: devicemapper
 Pool Name: VolGroup00-docker--pool
 Pool Blocksize: 524.3 kB
 Base Device Size: 10.74 GB
 Backing Filesystem: xfs
 Data file:
 Metadata file:
 Data Space Used: 20.45 MB
 Data Space Total: 7.495 GB
 Data Space Available: 7.475 GB
 Metadata Space Used: 40.96 kB
 Metadata Space Total: 46.14 MB
 Metadata Space Available: 46.1 MB
 Udev Sync Supported: true
 Deferred Removal Enabled: true
 Deferred Deletion Enabled: true
 Deferred Deleted Device Count: 0
 Library Version: 1.02.107-RHEL7 (2015-10-14)
Execution Driver: native-0.2
Logging Driver: journald
Plugins:
 Volume: local
 Network: null host bridge
Kernel Version: 3.10.0-327.el7.x86_64
Operating System: CentOS Linux 7 (Core)
OSType: linux
Architecture: x86_64
Number of Docker Hooks: 2
CPUs: 2
Total Memory: 1.797 GiB
Name: mirai-ap04
ID: MPNO:WD2Q:37KU:GSOQ:WGUD:IQWJ:WHKP:KY5A:HSZ2:NDGM:MYQW:YR5I
WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled
Registries: docker.io (secure)

プロフィール

らのっち

損害保険会社のIT企画部に勤務するSEです。OSSを勉強中です。

<所属>
日本PostgreSQLユーザ会とくしまOSS普及協議会

■■■ 当サイトは Internet Explorer 11 と Mozilla Firefox 43 で動作確認済みです。 ■■■