CentOS7にDockerをインストールする。

WordPressに特化した某高速エンジンを、搭載してみたくなって勉強を始めた覚え書きとなります。

Dockerのインストール手順

現在Dockerがインストールされていたら削除する。

$sudo yum remove docker docker-common docker-selinux docker-engine

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

必要なパッケージをインストールする。

$sudo yum install -y yum-utils device-mapper-persistent-data lvm2

読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.riken.jp
* extras: ftp.riken.jp
* updates: ftp.riken.jp
パッケージ device-mapper-persistent-data-0.7.3-3.el7.x86_64 はインストール済みか最新バージョンです
パッケージ 7:lvm2-2.02.177-4.el7.x86_64 はインストール済みか最新バージョンです
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ yum-utils.noarch 0:1.1.31-46.el7_5 を インストール
--> 依存性の処理をしています: python-kitchen のパッケージ: yum-utils-1.1.31-46.el7_5.noarch
--> 依存性の処理をしています: libxml2-python のパッケージ: yum-utils-1.1.31-46.el7_5.noarch
--> トランザクションの確認を実行しています。
---> パッケージ libxml2-python.x86_64 0:2.9.1-6.el7_2.3 を インストール
---> パッケージ python-kitchen.noarch 0:1.1.1-5.el7 を インストール
--> 依存性の処理をしています: python-chardet のパッケージ: python-kitchen-1.1.1-5.el7.noarch
--> トランザクションの確認を実行しています。
---> パッケージ python-chardet.noarch 0:2.2.1-1.el7_1 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

========================================================================================================================================
Package アーキテクチャー バージョン リポジトリー 容量
========================================================================================================================================
インストール中:
yum-utils noarch 1.1.31-46.el7_5 updates 120 k
依存性関連でのインストールをします:
libxml2-python x86_64 2.9.1-6.el7_2.3 base 247 k
python-chardet noarch 2.2.1-1.el7_1 base 227 k
python-kitchen noarch 1.1.1-5.el7 base 267 k

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

総ダウンロード容量: 860 k
インストール容量: 4.3 M
Downloading packages:
(1/4): libxml2-python-2.9.1-6.el7_2.3.x86_64.rpm | 247 kB 00:00:05
(2/4): yum-utils-1.1.31-46.el7_5.noarch.rpm | 120 kB 00:00:05
(3/4): python-chardet-2.2.1-1.el7_1.noarch.rpm | 227 kB 00:00:06
(4/4): python-kitchen-1.1.1-5.el7.noarch.rpm | 267 kB 00:00:06
----------------------------------------------------------------------------------------------------------------------------------------
合計 136 kB/s | 860 kB 00:00:06
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
インストール中 : python-chardet-2.2.1-1.el7_1.noarch 1/4
インストール中 : python-kitchen-1.1.1-5.el7.noarch 2/4
インストール中 : libxml2-python-2.9.1-6.el7_2.3.x86_64 3/4
インストール中 : yum-utils-1.1.31-46.el7_5.noarch 4/4
検証中 : libxml2-python-2.9.1-6.el7_2.3.x86_64 1/4
検証中 : python-kitchen-1.1.1-5.el7.noarch 2/4
検証中 : yum-utils-1.1.31-46.el7_5.noarch 3/4
検証中 : python-chardet-2.2.1-1.el7_1.noarch 4/4

インストール:
yum-utils.noarch 0:1.1.31-46.el7_5

依存性関連をインストールしました:
libxml2-python.x86_64 0:2.9.1-6.el7_2.3 python-chardet.noarch 0:2.2.1-1.el7_1 python-kitchen.noarch 0:1.1.1-5.el7

完了しました!

レポジトリを追加する。

$sudo yum-config-manager –add-repo https://download.docker.com/linux/centos/docker-ce.repo

読み込んだプラグイン:fastestmirror
adding repo from: https://download.docker.com/linux/centos/docker-ce.repo
grabbing file https://download.docker.com/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo
repo saved to /etc/yum.repos.d/docker-ce.repo

yumのパッケージインデックスを更新する。

Dockerのインストールやアップグレードの前に、1回実行することが推奨されている。
$sudo yum makecache fast

読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.riken.jp
* extras: ftp.riken.jp
* updates: ftp.riken.jp
base | 3.6 kB 00:00:00
docker-ce-stable | 2.9 kB 00:00:00
extras | 3.4 kB 00:00:00
updates | 3.4 kB 00:00:00
docker-ce-stable/x86_64/primary_db | 17 kB 00:00:05
メタデータのキャッシュを作成しました

インストール可能なDockerのバージョンを調べる。

$sudo yum list docker-ce.x86_64 –showduplicates | sort -r

利用可能なパッケージ
読み込んだプラグイン:fastestmirror
docker-ce.x86_64 18.06.1.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.0.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.03.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 18.03.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.12.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.12.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.09.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.09.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.2.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.3.ce-1.el7 docker-ce-stable
docker-ce.x86_64 17.03.2.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.0.ce-1.el7.centos docker-ce-stable
Loading mirror speeds from cached hostfile
* updates: ftp.riken.jp
* extras: ftp.riken.jp
* base: ftp.riken.jp

Dockerをインストールする。

$sudo yum install docker-ce-18.03.1.ce-1.el7.centos

読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.riken.jp
* extras: ftp.riken.jp
* updates: ftp.riken.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ docker-ce.x86_64 0:18.03.1.ce-1.el7.centos を インストール
--> 依存性の処理をしています: container-selinux >= 2.9 のパッケージ: docker-ce-18.03.1.ce-1.el7.centos.x86_64
--> 依存性の処理をしています: pigz のパッケージ: docker-ce-18.03.1.ce-1.el7.centos.x86_64
--> 依存性の処理をしています: libcgroup のパッケージ: docker-ce-18.03.1.ce-1.el7.centos.x86_64
--> 依存性の処理をしています: libltdl.so.7()(64bit) のパッケージ: docker-ce-18.03.1.ce-1.el7.centos.x86_64
--> トランザクションの確認を実行しています。
---> パッケージ container-selinux.noarch 2:2.68-1.el7 を インストール
--> 依存性の処理をしています: policycoreutils-python のパッケージ: 2:container-selinux-2.68-1.el7.noarch
---> パッケージ libcgroup.x86_64 0:0.41-15.el7 を インストール
---> パッケージ libtool-ltdl.x86_64 0:2.4.2-22.el7_3 を インストール
---> パッケージ pigz.x86_64 0:2.3.3-1.el7.centos を インストール
--> トランザクションの確認を実行しています。
---> パッケージ policycoreutils-python.x86_64 0:2.5-22.el7 を インストール
--> 依存性の処理をしています: setools-libs >= 3.3.8-2 のパッケージ: policycoreutils-python-2.5-22.el7.x86_64
--> 依存性の処理をしています: libsemanage-python >= 2.5-9 のパッケージ: policycoreutils-python-2.5-22.el7.x86_64
--> 依存性の処理をしています: audit-libs-python >= 2.1.3-4 のパッケージ: policycoreutils-python-2.5-22.el7.x86_64
--> 依存性の処理をしています: python-IPy のパッケージ: policycoreutils-python-2.5-22.el7.x86_64
--> 依存性の処理をしています: libqpol.so.1(VERS_1.4)(64bit) のパッケージ: policycoreutils-python-2.5-22.el7.x86_64
--> 依存性の処理をしています: libqpol.so.1(VERS_1.2)(64bit) のパッケージ: policycoreutils-python-2.5-22.el7.x86_64
--> 依存性の処理をしています: libapol.so.4(VERS_4.0)(64bit) のパッケージ: policycoreutils-python-2.5-22.el7.x86_64
--> 依存性の処理をしています: checkpolicy のパッケージ: policycoreutils-python-2.5-22.el7.x86_64
--> 依存性の処理をしています: libqpol.so.1()(64bit) のパッケージ: policycoreutils-python-2.5-22.el7.x86_64
--> 依存性の処理をしています: libapol.so.4()(64bit) のパッケージ: policycoreutils-python-2.5-22.el7.x86_64
--> トランザクションの確認を実行しています。
---> パッケージ audit-libs-python.x86_64 0:2.8.1-3.el7_5.1 を インストール
--> 依存性の処理をしています: audit-libs(x86-64) = 2.8.1-3.el7_5.1 のパッケージ: audit-libs-python-2.8.1-3.el7_5.1.x86_64
---> パッケージ checkpolicy.x86_64 0:2.5-6.el7 を インストール
---> パッケージ libsemanage-python.x86_64 0:2.5-11.el7 を インストール
---> パッケージ python-IPy.noarch 0:0.75-6.el7 を インストール
---> パッケージ setools-libs.x86_64 0:3.3.8-2.el7 を インストール
--> トランザクションの確認を実行しています。
---> パッケージ audit-libs.x86_64 0:2.8.1-3.el7 を 更新
--> 依存性の処理をしています: audit-libs(x86-64) = 2.8.1-3.el7 のパッケージ: audit-2.8.1-3.el7.x86_64
---> パッケージ audit-libs.x86_64 0:2.8.1-3.el7_5.1 を アップデート
--> トランザクションの確認を実行しています。
---> パッケージ audit.x86_64 0:2.8.1-3.el7 を 更新
---> パッケージ audit.x86_64 0:2.8.1-3.el7_5.1 を アップデート
--> 依存性解決を終了しました。

依存性を解決しました

========================================================================================================================================
Package アーキテクチャー バージョン リポジトリー 容量
========================================================================================================================================
インストール中:
docker-ce x86_64 18.03.1.ce-1.el7.centos docker-ce-stable 35 M
依存性関連でのインストールをします:
audit-libs-python x86_64 2.8.1-3.el7_5.1 updates 75 k
checkpolicy x86_64 2.5-6.el7 base 294 k
container-selinux noarch 2:2.68-1.el7 extras 36 k
libcgroup x86_64 0.41-15.el7 base 65 k
libsemanage-python x86_64 2.5-11.el7 base 112 k
libtool-ltdl x86_64 2.4.2-22.el7_3 base 49 k
pigz x86_64 2.3.3-1.el7.centos extras 68 k
policycoreutils-python x86_64 2.5-22.el7 base 454 k
python-IPy noarch 0.75-6.el7 base 32 k
setools-libs x86_64 3.3.8-2.el7 base 619 k
依存性関連での更新をします:
audit x86_64 2.8.1-3.el7_5.1 updates 247 k
audit-libs x86_64 2.8.1-3.el7_5.1 updates 99 k

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

総ダウンロード容量: 37 M
Is this ok [y/d/N]: y
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
(1/13): audit-libs-python-2.8.1-3.el7_5.1.x86_64.rpm | 75 kB 00:00:05
(2/13): audit-libs-2.8.1-3.el7_5.1.x86_64.rpm | 99 kB 00:00:05
(3/13): container-selinux-2.68-1.el7.noarch.rpm | 36 kB 00:00:05
(4/13): checkpolicy-2.5-6.el7.x86_64.rpm | 294 kB 00:00:05
(5/13): audit-2.8.1-3.el7_5.1.x86_64.rpm | 247 kB 00:00:05
(6/13): libcgroup-0.41-15.el7.x86_64.rpm | 65 kB 00:00:00
(7/13): libsemanage-python-2.5-11.el7.x86_64.rpm | 112 kB 00:00:00
(8/13): pigz-2.3.3-1.el7.centos.x86_64.rpm | 68 kB 00:00:00
(9/13): python-IPy-0.75-6.el7.noarch.rpm | 32 kB 00:00:00
(10/13): libtool-ltdl-2.4.2-22.el7_3.x86_64.rpm | 49 kB 00:00:05
(11/13): setools-libs-3.3.8-2.el7.x86_64.rpm | 619 kB 00:00:00
(12/13): policycoreutils-python-2.5-22.el7.x86_64.rpm | 454 kB 00:00:06
warning: /var/cache/yum/x86_64/7/docker-ce-stable/packages/docker-ce-18.03.1.ce-1.el7.centos.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID 621e9f35: NOKEY
docker-ce-18.03.1.ce-1.el7.centos.x86_64.rpm の公開鍵がインストールされていません
(13/13): docker-ce-18.03.1.ce-1.el7.centos.x86_64.rpm | 35 MB 00:00:06
----------------------------------------------------------------------------------------------------------------------------------------
合計 2.9 MB/s | 37 MB 00:00:12
https://download.docker.com/linux/centos/gpg から鍵を取得中です。
Importing GPG key 0x621E9F35:
Userid : "Docker Release (CE rpm) <docker@docker.com>"
Fingerprint: 060a 61c5 1b55 8a7f 742b 77aa c52f eb6b 621e 9f35
From : https://download.docker.com/linux/centos/gpg
上記の処理を行います。よろしいでしょうか? [y/N]y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
更新します : audit-libs-2.8.1-3.el7_5.1.x86_64 1/15
インストール中 : libcgroup-0.41-15.el7.x86_64 2/15
インストール中 : audit-libs-python-2.8.1-3.el7_5.1.x86_64 3/15
インストール中 : pigz-2.3.3-1.el7.centos.x86_64 4/15
インストール中 : libtool-ltdl-2.4.2-22.el7_3.x86_64 5/15
インストール中 : python-IPy-0.75-6.el7.noarch 6/15
インストール中 : checkpolicy-2.5-6.el7.x86_64 7/15
インストール中 : libsemanage-python-2.5-11.el7.x86_64 8/15
インストール中 : setools-libs-3.3.8-2.el7.x86_64 9/15
インストール中 : policycoreutils-python-2.5-22.el7.x86_64 10/15
インストール中 : 2:container-selinux-2.68-1.el7.noarch 11/15
インストール中 : docker-ce-18.03.1.ce-1.el7.centos.x86_64 12/15
更新します : audit-2.8.1-3.el7_5.1.x86_64 13/15
整理中 : audit-2.8.1-3.el7.x86_64 14/15
整理中 : audit-libs-2.8.1-3.el7.x86_64 15/15
検証中 : libcgroup-0.41-15.el7.x86_64 1/15
検証中 : docker-ce-18.03.1.ce-1.el7.centos.x86_64 2/15
検証中 : audit-2.8.1-3.el7_5.1.x86_64 3/15
検証中 : audit-libs-2.8.1-3.el7_5.1.x86_64 4/15
検証中 : setools-libs-3.3.8-2.el7.x86_64 5/15
検証中 : policycoreutils-python-2.5-22.el7.x86_64 6/15
検証中 : libsemanage-python-2.5-11.el7.x86_64 7/15
検証中 : 2:container-selinux-2.68-1.el7.noarch 8/15
検証中 : checkpolicy-2.5-6.el7.x86_64 9/15
検証中 : python-IPy-0.75-6.el7.noarch 10/15
検証中 : libtool-ltdl-2.4.2-22.el7_3.x86_64 11/15
検証中 : audit-libs-python-2.8.1-3.el7_5.1.x86_64 12/15
検証中 : pigz-2.3.3-1.el7.centos.x86_64 13/15
検証中 : audit-libs-2.8.1-3.el7.x86_64 14/15
検証中 : audit-2.8.1-3.el7.x86_64 15/15

インストール:
docker-ce.x86_64 0:18.03.1.ce-1.el7.centos

依存性関連をインストールしました:
audit-libs-python.x86_64 0:2.8.1-3.el7_5.1 checkpolicy.x86_64 0:2.5-6.el7 container-selinux.noarch 2:2.68-1.el7
libcgroup.x86_64 0:0.41-15.el7 libsemanage-python.x86_64 0:2.5-11.el7 libtool-ltdl.x86_64 0:2.4.2-22.el7_3
pigz.x86_64 0:2.3.3-1.el7.centos policycoreutils-python.x86_64 0:2.5-22.el7 python-IPy.noarch 0:0.75-6.el7
setools-libs.x86_64 0:3.3.8-2.el7

依存性を更新しました:
audit.x86_64 0:2.8.1-3.el7_5.1 audit-libs.x86_64 0:2.8.1-3.el7_5.1

完了しました!

Dockerを起動する。

$sudo systemctl start docker

起動を確認する。

$sudo docker run hello-world

Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
d1725b59e92d: Pull complete
Digest: sha256:0add3ace90ecb4adbf7777e9aacf18357296e799f81cabc9fde470971e499788
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
(amd64)
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
https://hub.docker.com/

For more examples and ideas, visit:
https://docs.docker.com/get-started/

OS起動時にDockerを自動起動させる。

$sudo systemctl enable docker

この記事はいかがでしたか?
良かったらポチッとお願いします!励みになります!!


//