services: mysql: image: mysql:8.0 container_name: report-db restart: always environment: MYSQL_DATABASE: ${DB_NAME:-report_db} MYSQL_ROOT_PASSWORD: ${DB_PASSWORD:-daoblock12!!} ports: - "3316:3306" volumes: - mysql-data:/var/lib/mysql networks: - report-network healthcheck: test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1"] interval: 5s timeout: 5s retries: 20 start_period: 30s backend: build: ./backend container_name: report-backend restart: always ports: - "${BACKEND_PORT:-54530}:3000" environment: - DB_HOST=${DB_HOST:-mysql} - DB_USER=${DB_USER:-root} - DB_PASSWORD=${DB_PASSWORD:-daoblock12!!} - DB_NAME=${DB_NAME:-report_db} - ACCESS_SECRET=${ACCESS_SECRET:-your_jwt_access_secret_123} - REFRESH_SECRET=${REFRESH_SECRET:-your_jwt_refresh_secret_123} - ADMIN_USER=${ADMIN_USER:-kyeongmi} - ADMIN_PASS=${ADMIN_PASS:-kyeongmi} - JEMINI_KEY=${JEMINI_KEY} depends_on: mysql: condition: service_healthy volumes: - ./backend/img:/app/img networks: - report-network frontend: build: ./frontend container_name: report-frontend restart: always ports: - "${FRONTEND_PORT:-55110}:80" depends_on: - backend networks: - report-network networks: report-network: driver: bridge volumes: mysql-data: