このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。
Docker超入門:Docker ComposeでpgAdmin4+PostgreSQLコンテナを構築する方法

🐘 Docker ComposeでpgAdmin4+PostgreSQLコンテナを構築する方法
ここでは、Docker Compose を使って、
PostgreSQLデータベースとWebベースの管理ツール pgAdmin4 を連携させる構成を紹介します。
この構成を使えば、ブラウザ上でPostgreSQLをGUI管理できるようになります✨
ここで学ぶ内容

💡 pgAdmin4とは?

pgAdmin4(ピージーアドミンフォー) は、PostgreSQL用の公式GUI管理ツールです。
データベースの作成・テーブル設計・SQLクエリ実行・バックアップ管理など、
通常CLIで行う操作を、ブラウザから簡単に行えるようにしてくれます。
| 項目 | 内容 |
|---|---|
| 開発元 | PostgreSQL Global Development Group |
| 対応環境 | Windows / macOS / Linux / Webブラウザ |
| 主な機能 | データベース管理・SQL実行・バックアップ・ユーザー管理 |
| 公式サイト | https://www.pgadmin.org/ |

💬 ポイント
MySQLでいう phpMyAdmin のような存在で、PostgreSQLをGUIで管理したいときに大活躍します!
🐘 PostgreSQLとは?

PostgreSQL(ポストグレスキューエル) は、オープンソースの高性能RDBMS(リレーショナルデータベース管理システム)です。
堅牢で信頼性が高く、商用データベースに匹敵する機能を備えています。
| 項目 | 内容 |
|---|---|
| 開発起源 | カリフォルニア大学バークレー校(Postgresプロジェクト) |
| 特徴 | トランザクション整合性(ACID準拠)・高拡張性・多言語サポート |
| 代表的な用途 | Webアプリ、モバイルバックエンド、データ分析基盤など |
| 公式サイト | https://www.postgresql.org/ |
URL:https://www.postgresql.org/

🧹 作業前のクリーンアップ
まずは、以前の検証用コンテナや不要なイメージを削除しておきましょう。
環境をきれいにしておくことで、トラブルを防げます。
docker system prune -a --volumes| オプション | 説明 |
|---|---|
| -a | 未使用のコンテナ・イメージ・ネットワークを削除 |
| --volumes | 未使用のボリュームも削除 |
⚠️ 注意:削除確認が表示されたら「y」を入力して進めましょう。
もしGUI操作が得意な方は、Docker Desktop から削除してもOKです。
実行結果
PS C:\Users\joeac> docker system prune -a --volumes
WARNING! This will remove:
- all stopped containers
- all networks not used by at least one container
- all anonymous volumes not used by at least one container
- all images without at least one container associated to them
- all build cache
Are you sure you want to continue? [y/N] y📁 compose.yamlの作成
1.ディレクトリを準備
cd desktop/docker
mkdir pgadminpostgre
cd pgadminpostgre実行結果
PS C:\Users\joeac> cd desktop/docker
PS C:\Users\joeac\Desktop\docker> mkdir pgadminpostgre
Directory: C:\Users\joeac\Desktop\docker
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 2025/10/16 19:18 pgadminpostgre
PS C:\Users\joeac\Desktop\docker> cd pgadminpostgre
PS C:\Users\joeac\Desktop\docker\pgadminpostgre>2.VSCodeでcompose.yamlを開く
code compose.yamlこれで設定ファイルを編集する準備ができました。
🧾 compose.yamlの内容
以下の内容を compose.yaml に貼り付けて保存してください👇
services:
postgres:
image: postgres:14.2
container_name: postgres_container
environment:
POSTGRES_DB: test-db
POSTGRES_USER: test-user
POSTGRES_PASSWORD: test-pass
volumes:
- db-data:/var/lib/postgresql/data
pgadmin:
image: dpage/pgadmin4:6.9
container_name: pgadmin_container
environment:
PGADMIN_DEFAULT_EMAIL: admin@example.com
PGADMIN_DEFAULT_PASSWORD: adminpassword
ports:
- "5050:80"
volumes:
- pgadmin4-data:/var/lib/pgadmin
volumes:
db-data:
pgadmin4-data:⚙️ 定義内容の解説
| 項目 | 説明 |
|---|---|
| services | 起動するコンテナサービスを定義するセクション。 |
| postgres | PostgreSQLコンテナの設定。 |
| image | 使用するイメージ(postgres:14.2)。 |
| container_name | コンテナ名(postgres_container)。 |
| environment | 初期設定(DB名・ユーザー・パスワードなど)。 |
| volumes | 永続化データをホストに保存(db-data)。 |
| pgadmin | pgAdmin4の設定。 |
| image | 使用するイメージ(dpage/pgadmin4:6.9)。 |
| container_name | コンテナ名(pgadmin_container)。 |
| environment | 初期ログイン情報を指定。 |
| ports | ホストのポート5050をpgAdminの80番ポートにマッピング。 |
| volumes | 設定データを保持(pgadmin4-data)。 |
💬 ポイント
- PostgreSQLとpgAdmin4は同じDockerネットワーク上で自動的に接続されます。
- PostgreSQLのデータは
db-dataに保存され、再起動しても消えません。 - pgAdmin4は
localhost:5050でアクセス可能です。
🚀 コンテナの起動
次のコマンドを実行してコンテナを立ち上げましょう。
docker compose up -d| オプション | 説明 |
|---|---|
| up | compose.yamlをもとにコンテナを作成・起動 |
| -d | バックグラウンド(detached)モードで起動 |
実行結果
PS C:\Users\joeac\Desktop\docker\pgadminpostgre> docker compose up -d
[+] Running 29/29
(省略)
[+] Running 5/5
✔ Network pgadminpostgre_default Created 0.0s
✔ Volume pgadminpostgre_db-data Created 0.0s
✔ Volume pgadminpostgre_pgadmin4-data Created 0.0s
✔ Container pgadmin_container Started 2.5s
✔ Container postgres_container Started 2.3s
PS C:\Users\joeac\Desktop\docker\pgadminpostgre>これで両方のコンテナが起動しました!
🌐 pgAdmin4へアクセス
1.ブラウザを開き、
URL欄に「localhost:5050」 を入力。

2.ログイン画面が表示されたら、
compose.yamlで設定した以下の情報を入力します。
| 項目 | 入力内容 |
|---|---|
| admin@example.com | |
| Password | adminpassword |
言語は「Japanese」を選択してログインします。

🧠 PostgreSQLを登録して接続
ログイン後の画面で、
1.「新しいサーバーを追加」をクリック

2.「General」タブで好きな名前を入力(例:postgres)

3.「接続」タブで以下を入力👇
| 項目 | 入力内容 |
|---|---|
| Host name/address | postgres |
| Maintenance database | test-db |
| Username | test-user |
| Password | test-pass |

「保存」ボタンをクリックすると接続成功です🎉
PostgrSQLに接続されます。

✅ まとめ
これで pgAdmin4 + PostgreSQL 環境が完成しました!
| ステップ | 内容 |
|---|---|
| 1️⃣ | 環境をクリーンアップ(docker system prune -a --volumes) |
| 2️⃣ | compose.yamlを作成 |
| 3️⃣ | docker compose up -d で起動 |
| 4️⃣ | ブラウザから localhost:5050 へアクセス |
| 5️⃣ | pgAdmin4でPostgreSQLに接続 |
💬 ひとことアドバイス
pgAdmin4を使えば、PostgreSQLの設定・操作・管理がすべてブラウザで完結!
CLIに慣れていない人でも簡単に扱えるので、学習にも最適です✨
