Docker環境にPHP7.4とPostgre9.6の環境を立ち上げるdocker-compose.ymlファイルを作ってみた。
version: '3.5'
services:
php:
container_name: php
image: php:7.4-apache
volumes:
- ./html:/var/www/html
ports:
- 8080:80
depends_on:
- db
networks:
- front_bridge
- app_backend_bridge
db:
container_name: db
image: postgres:9.6
volumes:
- pgsql_data:/var/lib/postgresql/data
environment:
POSTGRES_USER: root
POSTGRES_PASSWORD: root
POSTGRES_INITDB_ARGS: "--encoding=UTF-8"
hostname: postgres
restart: always
user: root
ports:
- 5432:5432
networks:
- app_backend_bridge
networks:
front_bridge:
name: front_bridge
external: true
app_backend_bridge:
name: app_backend_bridge
driver: bridge
volumes:
pgsql_data:
自分用のメモなので、docker-composeについて特に解説はしないが、データベースの保存先はDockerのボリュームを指定していることだけ書いておく。
また、GUIで接続する際はホスト名にlocalhostを指定し、docker-compose.ymlで定義したポート、ユーザー名、パスワードを入力すれば接続できる。