Posted at

docker-composeでpostgresの環境を作る

More than 1 year has passed since last update.


はじめに

やりたいこと

・dockerでpostgresを構築したい

・dbviewerもdockerで構築したい -> pgadmin4

・postgresは初期データも突っ込みたい

・dockerを他人に公開したい


docker-compose


docker-compose.yml

  postgresql:

image: postgres:10.5
container_name: postgresql
ports:
- 5432:5432
volumes:
- ./postgres/init:/docker-entrypoint-initdb.d
environment:
POSTGRES_USER: root
POSTGRES_PASSWORD: root
POSTGRES_INITDB_ARGS: "--encoding=UTF-8"
hostname: postgres
restart: always
user: root

pgadmin4:
image: dpage/pgadmin4:3.3
container_name: pgadmin4
ports:
- 80:80
volumes:
- ./pgadmin:/var/lib/pgadmin/storage
environment:
PGADMIN_DEFAULT_EMAIL: root
PGADMIN_DEFAULT_PASSWORD: root
hostname: pgadmin4
restart: always



初期データセットアップ

/postgres/init配下にsqlファイルを放り込んでおくと、


postgres起動時に設定してくれる。


1_create.sql

/* DATABASEを作成 */

CREATE DATABASE pgtest;


PgAdmin

1.http://localhost/にアクセス

2.ログイン


設定

EmailAdress:root

Password:root
Language:japanese

3.サーバーを追加


設定

ホスト名/アドレス:postgresql

ポート番号:5432
データベースの管理:postgres
ユーザ名:root