Rocky Linux 9にDocker CEをインストールします。
記事の目次
システムをアップデートする!
システムを最新化していない場合は、システムをアップデートします。
# dnf update -y
システムを再起動する!
システムをアップデートした場合は、カーネルのアップデートなど、アップデートを確実に反映するためシステムを再起動します。
# reboot
Docker CEのリポジトリを登録する!
Docker CEのリポジトリを登録します。
# dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo -y
インストール済みのDockerを削除する!
インストール済みのDockerを削除します。
# dnf remove docker docker-common docker-selinux docker-engine -y
Docker CEの前提パッケージをインストールする!
Docker CEの前提パッケージをインストールします。
# dnf install device-mapper-persistent-data lvm2 -y
Docker CEをインストールする!
Docker CEをインストールします。
# dnf install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y Last metadata expiration check: 0:00:10 ago on Wed 02 Nov 2022 07:11:15 AM JST. Error: Problem: problem with installed package buildah-1:1.26.2-1.el9_0.x86_64 - package buildah-1:1.26.2-1.el9_0.x86_64 requires runc >= 1.0.0-26, but none of the providers can be installed - package containerd.io-1.6.9-3.1.el9.x86_64 conflicts with runc provided by runc-4:1.1.3-2.el9_0.x86_64 - package containerd.io-1.6.9-3.1.el9.x86_64 obsoletes runc provided by runc-4:1.1.3-2.el9_0.x86_64 - cannot install the best candidate for the job (try to add '--allowerasing' to command line to replace conflicting packages or '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)
エラーが出力されます。メッセージに従い、「--allowerasing」のオプションを使用して再度インストールを試みます。
# dnf install docker-ce docker-ce-cli containerd.io docker-compose-plugin --allowerasing -y Last metadata expiration check: 0:00:21 ago on Wed 02 Nov 2022 07:11:15 AM JST. Dependencies resolved. ======================================================================================================================== Package Architecture Version Repository Size ======================================================================================================================== Installing: containerd.io x86_64 1.6.9-3.1.el9 docker-ce-stable 32 M replacing runc.x86_64 4:1.1.3-2.el9_0 docker-ce x86_64 3:20.10.21-3.el9 docker-ce-stable 21 M docker-ce-cli x86_64 1:20.10.21-3.el9 docker-ce-stable 29 M docker-compose-plugin x86_64 2.12.2-3.el9 docker-ce-stable 10 M Installing dependencies: container-selinux noarch 3:2.188.0-1.el9_0 appstream 47 k docker-ce-rootless-extras x86_64 20.10.21-3.el9 docker-ce-stable 3.7 M flatpak-selinux noarch 1.12.5-2.el9_0 appstream 22 k rpm-plugin-selinux x86_64 4.16.1.3-12.el9_0 baseos 19 k selinux-policy noarch 34.1.29-1.el9_0.2 baseos 55 k selinux-policy-targeted noarch 34.1.29-1.el9_0.2 baseos 6.3 M Installing weak dependencies: docker-scan-plugin x86_64 0.21.0-3.el9 docker-ce-stable 3.8 M Removing dependent packages: buildah x86_64 1:1.26.2-1.el9_0 @appstream 29 M Transaction Summary ======================================================================================================================== Install 11 Packages Remove 1 Package ... Installed: container-selinux-3:2.188.0-1.el9_0.noarch containerd.io-1.6.9-3.1.el9.x86_64 docker-ce-3:20.10.21-3.el9.x86_64 docker-ce-cli-1:20.10.21-3.el9.x86_64 docker-ce-rootless-extras-20.10.21-3.el9.x86_64 docker-compose-plugin-2.12.2-3.el9.x86_64 docker-scan-plugin-0.21.0-3.el9.x86_64 flatpak-selinux-1.12.5-2.el9_0.noarch rpm-plugin-selinux-4.16.1.3-12.el9_0.x86_64 selinux-policy-34.1.29-1.el9_0.2.noarch selinux-policy-targeted-34.1.29-1.el9_0.2.noarch Removed: buildah-1:1.26.2-1.el9_0.x86_64 Complete!
Docker CEをsystemdに登録する!
Docker CEをsystemdに登録して、自動起動するように設定します。
# systemctl enable docker --now Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /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 Wed 2022-11-02 07:15:24 JST; 18s ago TriggeredBy: ● docker.socket Docs: https://docs.docker.com Main PID: 5059 (dockerd) Tasks: 8 Memory: 24.2M CPU: 182ms CGroup: /system.slice/docker.service └─5059 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
Docker CEをバージョンを確認する!
インストールの確認を含めて、Docker CEをバージョンを確認します。
# docker version Client: Docker Engine - Community Version: 20.10.21 API version: 1.41 Go version: go1.18.7 Git commit: baeda1f Built: Tue Oct 25 18:02:16 2022 OS/Arch: linux/amd64 Context: default Experimental: true Server: Docker Engine - Community Engine: Version: 20.10.21 API version: 1.41 (minimum version 1.12) Go version: go1.18.7 Git commit: 3056208 Built: Tue Oct 25 18:00:01 2022 OS/Arch: linux/amd64 Experimental: false containerd: Version: 1.6.9 GitCommit: 1c90a442489720eec95342e1789ee8a5e1b9536f runc: Version: 1.1.4 GitCommit: v1.1.4-0-g5fd4c4d docker-init: Version: 0.19.0 GitCommit: de40ad0
sudoなしでDockerを使用できるようにする!
sudoなしでDockerを使用できるようにするためには、Dockerを使用するユーザをdockerグループに追加します。
$ sudo gpasswd -a usradmin docker
おわりに
Rocky Linux 9にDocker CEをインストールする場合、インストール時にオプションを付けてインストールする必要があります。
参考情報
関連記事
関連書籍(Amazon)