Docker CE は Red Hat Enterprise Linux (RHEL) 8 または CentOS 8 で公式にサポートされていません。 Red Hat が公式に推奨する RHEL 8 および CentOS 8 でのコンテナー管理方法は、Podman です。 Podmanは基本的にRHEL 8とCentOS 8におけるDockerの代替となるものです。 DockerのイメージはPodmanと互換性がありますが。 そのため、Podmanへの移行はそれほど難しくはありません。

とにかく、この記事はPodmanについてではありません。 CentOS 8 に Docker をインストールするためのものです。 もしあなたが本当に Podman に切り替えず、RHEL 8 または CentOS 8 マシンで Docker を使い続けたいなら、この記事はあなたのためのものです。

NOTE: もしあなたが本番マシンで Docker を使うつもりなら、CentOS 8/RHEL 8 にアップグレードしないことをお勧めします。 Docker が RHEL 8 および CentOS 8 を公式にサポートするまで、CentOS 7/RHEL 7 を使用し続けましょう。

必要なツールのインストール:

まず、次のコマンドで CentOS 8 パッケージ リポジトリ キャッシュを更新します:

$ sudo dnf makecache

次に、次のコマンドで Docker CE のインストールに必要なすべてのツールのインストールを実行します。

$ sudo dnf install dnf-utils device-mapper-persistent-data lvm2
fuse-overlayfs wget

インストールの確認は、Yキーを押して、<Enter>キーを押してください。

必要なツールはすべてインストールされているはずです。

Docker CE 公式パッケージ リポジトリの追加:

Docker CE は CentOS 8 の公式パッケージ リポジトリで利用可能ではありません。 しかし、CentOS 8の公式Docker CEパッケージリポジトリを追加し、そこからDockerをインストールすることができます。

公式Docker CEパッケージリポジトリを追加するには、次のコマンドを実行します:

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

ここで、次のコマンドで CentOS 8 のパッケージリポジトリキャッシュを更新します:

$ sudo dnf makecache

インストールする Containerd.CE.CE.CE のインストールは、次のコマンドで行います。io:

RHEL 8 および CentOS 8 での Docker CE の主な非互換性は、containerd.io パッケージです。 Docker CE はこのパッケージに依存していますが、RHEL 8 と CentOS 8 は公式にこれらのパッケージにフラグを立てています。 そのため、Docker が RHEL 8 および CentOS 8 で動作するために必要なバージョンの containerd.io パッケージを、DNF または YUM パッケージ マネージャーを使用して直接インストールできません。

幸運にも、最新バージョンの containerd.io パッケージを手動でダウンロードすることが可能です。

まず、次のように /tmp ディレクトリに移動します:

$ cd /tmp

この記事の執筆時点で containerd.io パッケージの最新版は 1.2.6-3.3 です。 この記事を読んでいるときに、それ以降のバージョンがあるかどうかは https://download.docker.com/linux/centos/7/x86_64/stable/Packages/

さて、最新版の containerd.IO をダウンロードします。ioパッケージをDocker CEのCentOS 7公式パッケージリポジトリから以下のコマンドでダウンロードします:

$ wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/
containerd.io-1.2.6-3.3.el7.x86_64.rpm

最新版の containerd.iio は、Containerd.iio-1.2.6-3.3.x86_64.rpm です。

containerd.io RPM パッケージファイルは、以下のスクリーンショットにあるように、/tmp ディレクトリにあるはずです。io*

ここで、以下のように DNF パッケージ マネージャーを使用して containerd.io-1.2.6-3.3.el7.x86_64.rpm パッケージ ファイルをインストールします:

$ sudo dnf localinstall ./containerd.io-1.2.6-3.3.el7.x86_64.rpm

インストールを確認するには、Y を押し、<Enter> を押してください。

最新バージョンの containerd.io がインストールされているはずです。

これで、CentOS 8 マシンに Docker CE をインストールする準備が整いました。

DockerCEのインストール:

公式Docker CEパッケージリポジトリからCentOS 8にDocker CEをインストールするには、次のコマンドを実行します:

$ sudo dnf install docker-ce docker-ce-cli

インストールの確認として、Yキーを押して <Enter >を押してください。

DNF パッケージ マネージャーは、Docker CE パッケージ リポジトリから必要なすべての RPM パッケージのダウンロードを開始するはずです。 完了するまでしばらくかかるかもしれません。

この時点で、Docker CE がインストールされているはずです。

ここで、次のコマンドで docker サービスの状態を確認します:

$ sudo systemctl status docker

私の場合のように、docker サービスが inactive (実行中ではない) および disabled (起動時に自動起動しない) になっているかもしれません。

docker サービスを起動するには、以下のコマンドを実行します:

$ sudo systemctl start docker

また、システム起動時に自動的に docker サービスを開始するには、以下のように CentOS 8 のシステム起動に docker サービスを追加してください。

$ sudo systemctl enable docker

ここで、再度dockerサービスの状態を確認する。

$ sudo systemctl status docker

Docker サービスはアクティブ (実行中) で有効 (システム起動時に自動起動) であるはずです。

Docker コマンドを sudo または root ユーザーとして実行したくありませんよね。 ログインユーザーとして Docker コマンドを実行するために、ログインユーザーを docker グループに追加する必要があります。

ログインユーザーをdockerグループに追加するには、以下のコマンドを実行します:

$ sudo usermod -aG docker $(whoami)

ここで、以下のコマンドでCentOS 8マシンをリブートしてください。

$ sudo reboot

CentOS8マシンが起動したら、次のコマンドでDockerが動作しているか確認できます:

$ docker version

このように、Docker CE 19が動いていることが確認できます。03.5. Docker Engine のクライアントとサーバーも動作しています。

それでは、hello-world Docker コンテナを動かしてみましょう。

$ docker run hello-world

ご覧のように、Docker はインターネットから hello-world コンテナを引き出して正常に実行しました。

以上で CentOS 8 への Docker CE インストールが完了です。 この記事を読んでいただきありがとうございました

admin

コメントを残す

メールアドレスが公開されることはありません。

lg