Redhat系OS環境(Fedora, CentOS, Redhat等)にDockerおよびDocker Composeをインストールする方法をまとめます。Cisco DevNetの試験では、配点は高くないものの、Docker, Kubernetesの基本操作やIoTが出題されます。
単純な試験合格のみを目指すならばDockerの学習を避けても十分合格は可能ですが、コンテナとして提供される便利ツールは多々ありますので一般教養としてDockerを抑えておくのは悪い事ではありません。
インストール手順はCentOS8.2を前提としています。2020年8月時点、containerd.ioがCentOS8.X向けに提供されていませんので、若干トリッキーな方法を使用します。
Dockerインストール
containerd.io インストール
docker-ceのリポジトリからDockerをインストールしようとすると、containerd.ioの依存関係を解決する事ができません。そこで、containerd.ioを「CentOS7」のリポジトリからインストールします。
dnf install https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm
Docker本体のインストール
docker-ceをインストールします。
dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo dnf install docker-ce
dockerを有効にします。
systemctl enable --now docker
Docker 動作確認
動作確認のため、最新のAlpine Linuxをダウンロードします。
docker image pull alpine
ダウンロードしたイメージを確認します。
[root@centos82 ~]# docker image ls REPOSITORY TAG IMAGE ID CREATED SIZE alpine latest a24bb4013296 3 months ago 5.57MB
コンテナを起動できる事を確認します。
[root@centos82 ~]# docker run --rm -i -t alpine:latest /bin/sh / # cat /etc/issue Welcome to Alpine Linux 3.12 Kernel \r on an \m (\l) / #
Docker Composeインストール
Docker Composeインストール
Docker Composeは複数のコンテナを同時に管理するためのツールです。仮に複数のコンテナを管理するような業務に携わらないとしても、Docker Composeとして提供されるツールも増えつつあるので、手元にDocker Composeの環境を整備しておくと何かと便利です。
「Docker Composeの公式ドキュメント」では複数のインストール方法が紹介されていますが、オススメはpipを使ったインストール方法です。
まずはpython3をインストールします。
dnf install python3
Docker Composeをインストールします。
pip3 install docker-compose
Docker Compose 入力補完
必須ではありませんが、コマンド入力補完のツールもインストールしておくと作業が楽になります。「公式ドキュメント Command-line completion」に記された導入手順は以下の通りです。
sudo curl -L https://raw.githubusercontent.com/docker/compose/1.26.2/contrib/completion/bash/docker-compose -o /etc/bash_completion.d/docker-compose