services: gravitino: image: apache/gravitino:1.0.1 container_name: daft-gravitino ports: - "${GRAVITINO_PORT:-8090}:8090" environment: GRAVITINO_HTTP_PORT: 8090 volumes: - ./gravitino-entrypoint.sh:/entrypoint.sh:ro entrypoint: ["/bin/bash", "/entrypoint.sh"] restart: unless-stopped mysql: image: mysql:8.0 platform: linux/amd64 container_name: daft-mysql ports: - "${MYSQL_PORT:-3306}:3306" environment: MYSQL_ROOT_PASSWORD: root MYSQL_ROOT_HOST: '%' volumes: - mysql-data:/var/lib/mysql restart: unless-stopped command: - --default-authentication-plugin=mysql_native_password - --binlog-expire-logs-seconds=60 - --character-set-server=utf8mb4 - --collation-server=utf8mb4_unicode_ci gravitino-seaweedfs: image: chrislusf/seaweedfs:4.47@sha256:ce9e796f1fe6f06968f4c04bdaf8f678dad9c8acdfef3d244133d71bfa6bf882 container_name: daft-gravitino-seaweedfs volumes: - gravitino-seaweedfs-data:/data ports: - "127.0.0.1:${SEAWEED_PORT:-9001}:9000" environment: AWS_ACCESS_KEY_ID: minioadmin AWS_SECRET_ACCESS_KEY: minioadmin command: [mini, -dir=/data, -s3.port=9000] healthcheck: test: ["CMD-SHELL", "curl -sS -o /dev/null -w '%{http_code}' http://127.0.0.1:9000/ | grep -qx 403"] interval: 1s timeout: 2s retries: 20 start_period: 5s restart: unless-stopped volumes: mysql-data: gravitino-seaweedfs-data: