Docker vs 公式インストーラー vs パッケージマネージャー:PostgreSQLとpgAdminのローカル環境構築方法
DockerとpgAdminを使ってローカル環境でPostgreSQLを構築・接続する方法
このチュートリアルでは、DockerとpgAdminを使ってローカル環境でPostgreSQLを構築し、pgAdminを使って接続する方法を説明します。
前提条件
- Dockerがインストールされていること
手順
- Dockerfileの作成
以下の内容でDockerfile
を作成します。
FROM postgres:14
ENV POSTGRES_USER postgres
ENV POSTGRES_PASSWORD postgres
ENV POSTGRES_DB postgres
RUN mkdir -p /var/lib/postgresql/data
CMD ["postgres", "-c", "CREATE USER $POSTGRES_USER WITH PASSWORD '$POSTGRES_PASSWORD'"]
CMD ["postgres", "-c", "CREATE DATABASE $POSTGRES_DB"]
CMD ["postgres", "-c", "ALTER USER $POSTGRES_USER WITH SUPERUSER"]
CMD ["postgres", "-D", "/var/lib/postgresql/data"]
- docker-compose.ymlの作成
version: "3"
services:
postgres:
build: .
ports:
- "5432:5432"
volumes:
- ./data:/var/lib/postgresql/data
pgadmin:
image: "dpage/pgadmin4"
ports:
- "8080:80"
environment:
PGADMIN_DEFAULT_EMAIL: "[email protected]"
PGADMIN_DEFAULT_PASSWORD: "admin"
- コンテナの起動
以下のコマンドを実行してコンテナを起動します。
docker-compose up -d
- pgAdminへの接続
ブラウザでhttp://localhost:8080
を開きます。
ログイン画面が表示されるので、以下の情報を入力してログインします。
- ユーザー名:
admin
ログイン後、左側のメニューからServers
を選択し、+
ボタンをクリックします。
以下の情報を入力してPostgreSQLサーバーを追加します。
- 名前: 任意の名前
- ホスト名:
localhost
- ポート番号:
5432
- ユーザー名:
postgres
Save
ボタンをクリックして保存します。
PostgreSQLサーバーが追加されると、左側のメニューに表示されます。
データベースを作成したり、テーブルを作成したり、クエリを実行したりすることができます。
DockerとpgAdminを使うと、ローカル環境で簡単にPostgreSQLを構築することができます。
このチュートリアルを参考に、PostgreSQLをローカル環境で構築して、pgAdminを使って接続してみてください。
# Dockerfile
FROM postgres:14
ENV POSTGRES_USER postgres
ENV POSTGRES_PASSWORD postgres
ENV POSTGRES_DB postgres
RUN mkdir -p /var/lib/postgresql/data
CMD ["postgres", "-c", "CREATE USER $POSTGRES_USER WITH PASSWORD '$POSTGRES_PASSWORD'"]
CMD ["postgres", "-c", "CREATE DATABASE $POSTGRES_DB"]
CMD ["postgres", "-c", "ALTER USER $POSTGRES_USER WITH SUPERUSER"]
CMD ["postgres", "-D", "/var/lib/postgresql/data"]
# docker-compose.yml
version: "3"
services:
postgres:
build: .
ports:
- "5432:5432"
volumes:
- ./data:/var/lib/postgresql/data
pgadmin:
image: "dpage/pgadmin4"
ports:
- "8080:80"
environment:
PGADMIN_DEFAULT_EMAIL: "[email protected]"
PGADMIN_DEFAULT_PASSWORD: "admin"
このコードを使って、以下のコマンドを実行することで、ローカル環境にPostgreSQLとpgAdminを構築することができます。
docker-compose up -d
PostgreSQLとpgAdminを使ってローカル環境を構築する他の方法
公式のインストーラーを使う
PostgreSQLとpgAdminはそれぞれ公式のインストーラーが提供されています。
インストーラーをダウンロードして実行することで、簡単にPostgreSQLとpgAdminをインストールすることができます。
パッケージマネージャーを使う
多くのLinuxディストリビューションでは、PostgreSQLとpgAdminはパッケージマネージャーを使ってインストールすることができます。
例えば、Ubuntuの場合、以下のコマンドを実行することでインストールできます。
sudo apt install postgresql-14 pgadmin4
ソースコードからインストールする
詳細は以下の公式サイトを参照してください。
Docker以外にも、PostgreSQLとpgAdminを使ってローカル環境を構築する方法はいくつかあります。
自分の環境や目的に合った方法を選択してください。
postgresql docker pgadmin