New docker compose: try 1

This commit is contained in:
= 2025-04-15 21:56:28 +02:00
parent bbc9dd85da
commit d3845ba668

View file

@ -1,66 +1,45 @@
version: '3.8' version: "3.8"
services: services:
backend:
build:
context: ./backend
dockerfile: Dockerfile
container_name: laravel_backend
volumes:
- ./backend:/var/www/html
networks:
- app-network
environment:
- APP_ENV=local
- DB_HOST=db
- DB_PORT=3306
depends_on:
- db
frontend:
build:
context: ./frontend
dockerfile: Dockerfile
container_name: react_frontend
volumes:
- ./frontend:/app
networks:
- app-network
environment:
- CHOKIDAR_USEPOLLING=true
stdin_open: true
tty: true
db: db:
image: mysql:8.0 image: mysql:8.0
container_name: mysql_db container_name: dishplanner-db
restart: always restart: unless-stopped
volumes:
- db-data:/var/lib/mysql
networks:
- app-network
environment: environment:
MYSQL_ROOT_PASSWORD: root MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_DATABASE: laravel MYSQL_DATABASE: dishplanner
MYSQL_USER: laravel MYSQL_USER: dishuser
MYSQL_PASSWORD: laravel MYSQL_PASSWORD: dishpass
nginx:
image: nginx:latest
container_name: nginx_proxy
volumes: volumes:
- ./nginx:/etc/nginx/conf.d - db_data:/var/lib/mysql
backend:
image: jochent/dishplanner-backend:latest
container_name: dishplanner-backend
restart: unless-stopped
environment:
DB_CONNECTION: mysql
DB_HOST: db
DB_PORT: 3306
DB_DATABASE: dishplanner
DB_USERNAME: dishuser
DB_PASSWORD: dishpass
depends_on:
- db
ports: ports:
- "80:80" - "9000:9000" # Only needed if exposing php-fpm, otherwise remove
frontend:
image: jochent/dishplanner-frontend:latest
container_name: dishplanner-frontend
restart: unless-stopped
environment:
NEXT_PUBLIC_API_URL: http://localhost:9000 # or backend:9000 if hitting directly
depends_on: depends_on:
- backend - backend
- frontend ports:
networks: - "3000:3000"
- app-network
networks:
app-network:
driver: bridge
volumes: volumes:
db-data: db_data: