Dockerイメージで環境構築
- Docker: 4.25.2
- postgres: 16.1
- pgadmin4: 8.1
pgadmin4のイメージを取得
$ docker pull dpage/pgadmin4
postgresのイメージを取得
$ docker pull postgres
pgadmin4のイメージを起動
参考:Examples
pgadmin4のdocker hubを参照。
- コンテナをmy-pgadmin4と命名
- docker側の80ポートとローカルの8080ポートをバインド
- データの永続化のために名前付きボリュームを作成してコンテナ側のファイルをマウント。
- PGADMIN_DEFAULT_EMAIL環境変数にログイン用のメールアドレスを設定。
- PGADMIN_DEFAULT_PASSWORD環境変数にログイン用のパスワードを設定。
- dpage/pgadmin4イメージをdetachモードで起動
$ docker run --name my-pgadmin4 -p 8080:80 \
-v volume_pgadmin:/var/lib/pgadmin \
-e 'PGADMIN_DEFAULT_EMAIL=user@domain.com' \
-e 'PGADMIN_DEFAULT_PASSWORD=SuperSecret' \
-d dpage/pgadmin
postgresのイメージを起動
- コンテナをmy-postgresと命名
- docker側の5432ポートとローカルの5432ポートをバインド
- データの永続化のために名前付きボリュームを作成してコンテナ側のファイルをマウント。
- POSTGRES_PASSWORD環境変数にログイン用のパスワードを設定。(※デフォルトユーザーは
postgres
になる) - postgresイメージをdetachモードで起動
$ docker run --name my-postgres -p 5432:5432 \
-v volume_postgres:/var/lib/postgresql/data \
-e POSTGRES_PASSWORD=mysecretpassword \
-d postgres
postgresが実行されているコンテナのIPアドレスを取得
$ docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' my-postgres
172.17.0.3