services: db: image: mysql:8.0 restart: unless-stopped environment: MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD} MYSQL_DATABASE: schwarmblog MYSQL_USER: ${MYSQL_USER} MYSQL_PASSWORD: ${MYSQL_PASSWORD} volumes: - db_data:/var/lib/mysql ports: - "3306:3306" api: build: context: . dockerfile: apps/api/Dockerfile restart: unless-stopped environment: DATABASE_URL: mysql://${MYSQL_USER}:${MYSQL_PASSWORD}@db:3306/schwarmblog JWT_SECRET: ${JWT_SECRET} NODE_ENV: production depends_on: - db ports: - "3001:3001" web: build: context: . dockerfile: apps/web/Dockerfile restart: unless-stopped depends_on: - api ports: - "80:80" volumes: db_data: