version: '3.8' services: mysql: image: mysql:8.0 container_name: giteapm_mysql environment: MYSQL_ROOT_PASSWORD: password MYSQL_DATABASE: giteapm MYSQL_USER: giteapm MYSQL_PASSWORD: giteapm_password ports: - "3306:3306" volumes: - mysql_data:/var/lib/mysql - ./schema.sql:/docker-entrypoint-initdb.d/schema.sql command: --default-authentication-plugin=mysql_native_password healthcheck: test: ["CMD", "mysqladmin", "ping", "-h", "localhost"] timeout: 20s retries: 10 giteapm: build: . container_name: giteapm_app ports: - "8080:8080" depends_on: mysql: condition: service_healthy environment: - DB_HOST=mysql - DB_PORT=3306 - DB_USER=root - DB_PASSWORD=password - DB_NAME=giteapm volumes: - ./config/config.yaml:/root/config/config.yaml command: ["./giteapm", "-config", "config/config.yaml"] volumes: mysql_data: