😊
Fedora Linux で Docker を使えるようにする
はじめに
WSLで正式にローンチされた Fedora Linux をインストールしたので Docker を使えるようにする。
古いバージョンのアンインストール
sudo dnf remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
インストール手順
1. パッケージのインストール
sudo dnf -y install dnf-plugins-core
2. リポジトリの追加
sudo dnf config-manager addrepo --from-repofile=https://download.docker.com/linux/fedora/docker-ce.repo
3. Docker Engine のインストール
sudo dnf -y install docker-ce docker-ce-cli containerd.io docker-compose-plugin
4. docker を起動
sudo systemctl start docker
5. ユーザーをdockerグループに追加
sudo usermod -aG docker $USER
6. 再起動してdockerコマンドを実行できるか確認
docker ps
dockerd の自動起動設定
Ubuntu や Debian では、デフォルトでDockerサービスがブート時に起動するように設定されているそうなのですが、
今回インストールした Fedora ではブート時に起動してこなかったので以下コマンドで自動起動の設定を行います。
sudo systemctl enable docker.service
sudo systemctl enable containerd.service
docker compose のインストール
ローカル環境はdocker-compose.ymlでコンテナ管理をしたいので docker compose をインストールします。
sudo mkdir -p /usr/local/lib/docker/cli-plugins
sudo curl -SL https://github.com/docker/compose/releases/download/v2.40.3/docker-compose-linux-x86_64 -o /usr/local/lib/docker/cli-plugins/docker-compose
sudo chmod +x /usr/local/lib/docker/cli-plugins/docker-compose
docker compose version
以前発生した問題の共有
ちょっと前に Docker をインストールしようとしたら以下のエラーが発生し Docker Engine のインストールから先へ進めなかったことがあります。
Updating and loading repositories:
Docker Repository ???% | 0.0 B/s | 0.0 B | 00m00s
>>> Curl error (6): Could not resolve hostname for https://yum.dockerproject.org/repo/main/fedora/42/repodata/repomd.xml
>>> Curl error (6): Could not resolve hostname for https://yum.dockerproject.org/repo/main/fedora/42/repodata/repomd.xml
>>> Curl error (6): Could not resolve hostname for https://yum.dockerproject.org/repo/main/fedora/42/repodata/repomd.xml
>>> Curl error (6): Could not resolve hostname for https://yum.dockerproject.org/repo/main/fedora/42/repodata/repomd.xml
>>> Librepo error: Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried
Failed to download metadata (baseurl: "https://yum.dockerproject.org/repo/main/fedora/42/") for repository "dockerrepo"
Librepo error: Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried
yumのリポジトリが有効になっていたため名前解決ができずインストールができないのが原因でした。
sudo rm -f /etc/yum.repos.d/docker*.repo
上記コマンドを実行後3. Docker Engine のインストールを実施できました。
参考文献
基本的にこのマニュアル通りに実行でOK
Discussion