メインコンテンツへスキップ

AlmaLinux 10【最新】Dockerインストール手順|RHEL 10互換

この記事では、2025年リリースの最新OS AlmaLinux 10.1 Docker Engine をインストールし、次世代の開発環境を構築する手順を解説します。

AlmaLinux 10 は Linux Kernel 6.12 を採用しており、コンテナのパフォーマンスやスケジューリング機能が向上しています。 RHEL 10系では Podman がより深くシステムに統合されていますが、既存のエコシステムや開発ツールの都合上、Docker Engineが必要なケースは依然として多いです。

この記事のゴール

  • システム標準のPodmanと競合させずにDockerを入れる
  • 公式リポジトリから最新のDocker Engine (CE) を導入する
  • sudo なしで実行できるように権限を調整する

検証環境

OSカーネルDockerバージョン
AlmaLinux 10.16.12.x29.1.3

前提条件

  • OS: AlmaLinux 10.1 がインストール済みであること
  • 権限: sudo 可能なユーザーで操作すること
  • ネットワーク: 外部リポジトリへの接続が可能であること

Docker Engine インストール手順

Docker公式リポジトリを使用し、最新かつ安定した環境を構築します。

  1. 競合パッケージの削除

    AlmaLinux 10では、標準でコンテナツール(Podman等)が含まれている場合が多いです。Dockerと競合するため、以下のコマンドで関連パッケージを一掃します。

    $ bash
    sudo dnf remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine \
                  podman \
                  runc

    ※「パッケージはインストールされていません」と出ても問題ありません。

  2. リポジトリのセットアップ

    dnf-utils を入れ、Docker公式のCentOS用リポジトリを追加します。 (AlmaLinuxはRHEL/CentOSとバイナリ互換があるため、CentOSリポジトリを使用するのが標準です)

    $ bash
    sudo dnf install -y dnf-utils
    sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
  3. パッケージのインストール

    Docker Engine本体と、CLIツール、Containerdランタイム、およびComposeプラグインを一括でインストールします。

    $ bash
    sudo dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

    途中、GPG鍵のインポートを求められた場合は y を入力して承認してください。

  4. バージョンの確認

    インストールが正常に完了したか確認します。

    $ bash
    docker --version
    # 出力例: Docker version 29.1.3, build f52814d

サービスの起動と自動化

インストール直後はDockerサービスは停止しています。

dockerは停止中

systemctl コマンドで起動し、サーバー再起動時にも自動的に立ち上がるように設定します。

$ bash
sudo systemctl enable --now docker

以下のコマンドで active (running) になっていることを確認してください。

$ bash
systemctl status docker
dockerは起動中

必須設定:一般ユーザーでの実行許可

デフォルトではDockerコマンドの実行に sudo が必要ですが、開発効率が悪いため、現在のユーザーを docker グループに追加します。

  1. グループへの追加

    以下のコマンドを実行し、現在ログイン中のユーザーを docker グループに追加します。

    $ bash
    sudo usermod -aG docker $USER
  2. 設定の反映

    グループ情報の変更を現在のシェルに反映させます。一度ログアウトしても構いませんが、以下のコマンドなら即座に反映されます。

    $ bash
    newgrp docker
  3. 動作確認(Hello World)

    sudo なしでコンテナが起動できるかテストします。

    $ bash
    docker run hello-world

    以下のようなメッセージが表示されれば、権限設定は成功です。

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

Docker Compose について

AlmaLinux 10向けの最新Dockerでは、Docker Composeは独立したコマンドではなく、CLIプラグイン (docker compose) として提供されています。

バージョン確認

$ bash
docker compose version
# 出力例: Docker Compose version v2.30.1

compose.yml の推奨記述

現在はファイル名を docker-compose.yml ではなく compose.yml とし、ファイル内の version: '3' などの記述を省略するのがベストプラクティス(Compose Specification)です。

file
services:
  web:
    image: nginx:latest
    ports:
      - "80:80"

トラブルシューティング

Q. “Requires: container-selinux” エラーが出る

A. dnf install 時にこのエラーが出る場合、EPELリポジトリ等が干渉している可能性がありますが、通常は appstream リポジトリに含まれています。sudo dnf install container-selinux を先に実行してみてください。

Q. ファイアウォールの設定は必要ですか?

A. Dockerは自動的に iptables ルールを変更して通信を許可しようとしますが、AlmaLinux 10の firewalld と競合することがあります。開発環境であればそのままでも通ることが多いですが、つながらない場合は firewall-cmd --add-masquerade --permanent などを検討してください。

まとめ

これでAlmaLinux 10環境でDocker開発を行う準備が整いました。 次は、開発効率を上げるためにVSCodeをインストールしたり、具体的なコンテナ構築に進みましょう。

/linux/install-vscode/

higmasan.com

AlmaLinux 10にVSCodeをインストールする方法|Microsoft公式リポジトリ(dnf)

higmasan.com

サイト内検索