はじめに Link to heading

このブログでは、Ubuntu 24.04にDocker環境を構築する手順を、実際の構築経験に基づいて説明します。

前提条件 Link to heading

  • Ubuntu 24.04がインストール済み
  • sudo権限を持つユーザーアカウント
  • インターネット接続

インストール手順 Link to heading

1. システムパッケージの更新 Link to heading

まず、パッケージリストを最新の状態に更新します。

1sudo apt-get update -y

このコマンドで、APTパッケージマネージャーがすべての利用可能なパッケージリストを更新します。

2. Dockerのインストール Link to heading

Docker.ioとDocker Composeをインストールします。

1sudo apt-get install -y docker.io docker-compose

インストール内容:

  • docker.io (バージョン 27.5.1) - Dockerコンテナランタイム
  • docker-compose - Docker Composeツール(複数コンテナの管理用)
  • containerd (バージョン 1.7.28) - コンテナランタイムの依存関係
  • runc (バージョン 1.3.0) - コンテナ実行環境

3. インストール確認 Link to heading

Dockerが正しくインストールされたか確認します。

1docker --version

出力例:

Docker version 27.5.1, build 27.5.1-0ubuntu3~24.04.2

4. Docker Compose v2のインストール(重要) Link to heading

APTリポジトリからインストールされるdocker-composeは古いバージョン(1.29.2)であり、Python 3.12との互換性の問題があります。公式のDocker Compose v2パッケージをインストールすることをお勧めします。

1sudo apt install docker-compose-v2 -y

バージョン確認:

1docker compose version

出力例:

Docker Compose version 2.37.1+ds1-0ubuntu2~24.04.1

重要: Docker Compose v2では、コマンドがdocker-compose(ハイフン)からdocker compose(スペース)に変更されています。

5. ユーザーをdockerグループに追加 Link to heading

Dockerコマンドを実行する際に、毎回sudoを入力する必要を避けるため、現在のユーザーをdockerグループに追加します。

1sudo usermod -aG docker $USER

その後、ターミナルを再起動するか、以下のコマンドで権限を反映させます。

1newgrp docker

動作確認 Link to heading

以下のコマンドでDockerが正常に動作しているか確認します。

1docker ps

このコマンドで現在実行中のコンテナ一覧が表示されます。初回実行時は何も表示されない場合があります。

Helloコンテナを実行して確認することもできます。

1docker run hello-world

成功すると以下のようなメッセージが表示されます。

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

トラブルシューティング Link to heading

docker-composeが起動しない場合 Link to heading

症状:

ModuleNotFoundError: No module named 'distutils'

原因: Python 3.12ではdistutilsモジュールが削除されました。Ubuntu 24.04のデフォルトのdocker-compose(v1.29.2)はこれに依存しているため、互換性の問題が発生します。

解決方法: Docker Compose v2をインストールしてください。

1sudo apt install docker-compose-v2 -y

インストール後は、docker compose(スペース付き)コマンドを使用します。古いdocker-compose(ハイフン付き)コマンドは削除することをお勧めします。

1sudo apt remove docker-compose

permissionエラーが出る場合 Link to heading

permission denied while trying to connect to the Docker daemon socket

解決方法: 以下の手順を実行してください。

  1. sudo usermod -aG docker $USER でユーザーをグループに追加
  2. ターミナルをログアウト/ログイン、または newgrp docker を実行
  3. 改めて docker ps で確認

インストール後の推奨設定 Link to heading

1. Dockerデーモンの有効化 Link to heading

システム起動時にDockerが自動起動するように設定します。

1sudo systemctl enable docker

2. ユーザーのログイン再実行 Link to heading

dockerグループへの追加を完全に反映させるため、ログアウト/ログインしてください。

まとめ Link to heading

このガイドに従うことで、Ubuntu 24.04に最新のDocker環境を構築できます。主なポイントは:

  • 古いdocker-composeの互換性問題に対処する
  • ユーザーをdockerグループに追加してsudo不要にする
  • インストール後の動作確認を忘れずに

これでコンテナベースの開発環境が整いました。次のステップとしては、実際にDockerfileを書いてカスタムイメージを作成したり、docker-composeで複数コンテナを管理したりすることができます。

参考リンク Link to heading