docker-compose.yml
version: '3'
services:
web:
image: nginx:1.21
depends_on:
- app
ports:
- "8000:80"
volumes:
- ./default.conf:/etc/nginx/conf.d/default.conf
- ./html:/var/www/html
app:
build: ./docker/php
image: php:7.4
depends_on:
- db
volumes:
- ./php.ini:/usr/local/etc/php/php.ini
- ./html:/var/www/html
db:
image: mysql:8.0
command:
- --default-authentication-plugin=mysql_native_password
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_unicode_ci
restart: always
environment:
LANG: C.UTF-8
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: test_db
MYSQL_USER: user_name
MYSQL_PASSWORD: secret_password
TZ: 'Asia/Tokyo'
volumes:
- ./db:/var/lib/mysql
- ./my.cnf:/etc/mysql/conf.d/my.cnf
ports:
- 3306:3306
phpmyadmin:
image: phpmyadmin:5
depends_on:
- db
environment:
- PMA_ARBITRARY=1
- PMA_HOSTS=db
- PMA_USER=user_name
- PMA_PASSWORD=secret_password
ports:
- "3000:80"
volumes:
- ./sessions:/sessions