version: "3.9" services: app: build: . container_name: mi_scraper depends_on: - mysql environment: - MYSQL_HOST=mysql - MYSQL_USER=root - MYSQL_PASSWORD=admin123 - MYSQL_DATABASE=scraper_db volumes: - ./app:/app restart: always networks: - metanet1 mysql: image: mysql:8 container_name: mi_mysql restart: always environment: MYSQL_ROOT_PASSWORD: admin123 MYSQL_DATABASE: scraper_db ports: - "3306:3306" volumes: - mysql_data:/var/lib/mysql - ./init.sql:/docker-entrypoint-initdb.d/init.sql networks: - metanet1 metabase: image: metabase/metabase:latest container_name: metabase hostname: metabase volumes: - /dev/urandom:/dev/random:ro ports: - "3000:3000" environment: MB_DB_TYPE: mysql MB_DB_DBNAME: scraper_db MB_DB_PORT: 3306 MB_DB_USER: root MB_DB_PASS: admin123 MB_DB_HOST: mysql networks: - metanet1 depends_on: - mysql healthcheck: test: curl --fail -I http://localhost:3000/api/health || exit 1 interval: 15s timeout: 5s retries: 5 networks: metanet1: driver: bridge volumes: mysql_data: