67 lines
1.5 KiB
YAML
67 lines
1.5 KiB
YAML
services:
|
|
app:
|
|
image: laravel_frankenphp
|
|
build:
|
|
context: .
|
|
dockerfile: docker/Dockerfile
|
|
container_name: laravel_frankenphp
|
|
restart: unless-stopped
|
|
working_dir: /var/www
|
|
user: "${UID:-1000}:${GID:-1000}"
|
|
volumes:
|
|
- ./laravel:/var/www
|
|
- ./docker/Caddyfile:/etc/frankenphp/Caddyfile
|
|
- caddy_data:/data
|
|
ports:
|
|
- "127.0.0.1:8000:80"
|
|
# - "8443:443"
|
|
# - "127.0.0.1:5173:5173"
|
|
depends_on:
|
|
mysql:
|
|
condition: service_healthy
|
|
networks:
|
|
- laravel_network
|
|
mysql:
|
|
image: mysql:8.4.8
|
|
container_name: laravel_mysql
|
|
restart: unless-stopped
|
|
ports:
|
|
- "127.0.0.1:3306:3306"
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: secret
|
|
MYSQL_DATABASE: laravel
|
|
MYSQL_USER: laravel
|
|
MYSQL_PASSWORD: secret
|
|
volumes:
|
|
- mysql:/var/lib/mysql
|
|
networks:
|
|
- laravel_network
|
|
healthcheck:
|
|
test: [ "CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "root", "-psecret" ]
|
|
timeout: 10s
|
|
retries: 5
|
|
start_period: 30s
|
|
interval: 30s
|
|
phpmyadmin:
|
|
image: phpmyadmin/phpmyadmin
|
|
container_name: laravel_phpmyadmin
|
|
restart: unless-stopped
|
|
ports:
|
|
- "127.0.0.1:8585:80"
|
|
environment:
|
|
PMA_HOST: mysql
|
|
PMA_PORT: 3306
|
|
PMA_USER: laravel
|
|
PMA_PASSWORD: secret
|
|
PMA_ARBITRARY: 1
|
|
depends_on:
|
|
mysql:
|
|
condition: service_healthy
|
|
networks:
|
|
- laravel_network
|
|
networks:
|
|
laravel_network:
|
|
driver: bridge
|
|
volumes:
|
|
caddy_data:
|
|
mysql: |