- add mysql client binaries for database operations - reduce php extensions to production essentials - bind mysql and phpmyadmin to localhost only - replace php-fpm.conf with php.ini for upload limits
59 lines
1.2 KiB
YAML
59 lines
1.2 KiB
YAML
name: laravel-setup
|
|
|
|
services:
|
|
web:
|
|
image: nginx:latest
|
|
volumes:
|
|
- ./:/var/www
|
|
- ./docker/nginx.conf:/etc/nginx/conf.d/default.conf
|
|
ports:
|
|
- "8000:80"
|
|
environment:
|
|
- NGINX_HOST=localhost
|
|
depends_on:
|
|
php-fpm:
|
|
condition: service_started
|
|
|
|
php-fpm:
|
|
build:
|
|
context: .
|
|
dockerfile: docker/Dockerfile
|
|
args:
|
|
UID: ${APP_UID}
|
|
GID: ${APP_GID}
|
|
env_file:
|
|
- .env
|
|
volumes:
|
|
- ./:/var/www
|
|
|
|
mysql:
|
|
image: mysql:8.0
|
|
ports:
|
|
- "127.0.0.1:${DB_PORT:-3306}:3306"
|
|
environment:
|
|
- MYSQL_DATABASE=${DB_DATABASE}
|
|
- MYSQL_USER=${DB_USERNAME}
|
|
- MYSQL_PASSWORD=${DB_PASSWORD}
|
|
- MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD}
|
|
volumes:
|
|
- mysql-data-development:/var/lib/mysql
|
|
|
|
|
|
phpmyadmin:
|
|
image: phpmyadmin:latest
|
|
restart: unless-stopped
|
|
ports:
|
|
- "127.0.0.1:8080:80"
|
|
environment:
|
|
- PMA_HOST=mysql
|
|
- PMA_USER=root
|
|
- PMA_PASSWORD=${DB_ROOT_PASSWORD}
|
|
- PMA_PORT=${DB_PORT:-3306}
|
|
- UPLOAD_LIMIT=100M
|
|
depends_on:
|
|
mysql:
|
|
condition: service_started
|
|
|
|
volumes:
|
|
mysql-data-development:
|