services: app: build: context: ./app dockerfile: Dockerfile container_name: fastapi_app ports: - "8003:8000" environment: - MYSQL_HOST=${MYSQL_HOST} - MYSQL_USER=${MYSQL_USER} - MYSQL_PASSWORD=${MYSQL_PASSWORD} - MYSQL_DATABASE=${MYSQL_DATABASE} - MYSQL_PORT=${MYSQL_PORT} - OLLAMA_URL=${OLLAMA_URL} - OLLAMA_MODEL=${OLLAMA_MODEL} depends_on: mysql: condition: service_healthy command: ["uvicorn", "app.main:app","--reload", "--host", "0.0.0.0", "--port", "8000"] mysql: image: mysql:latest container_name: mysql_db restart: always environment: MYSQL_ROOT_PASSWORD: ${MYSQL_PASSWORD} MYSQL_DATABASE: ${MYSQL_DATABASE} MYSQL_USER: ${MYSQL_USER} MYSQL_PASSWORD: ${MYSQL_PASSWORD} ports: - "13306:3306" volumes: - mysql_data:/var/lib/mysql - ./init.sql:/docker-entrypoint-initdb.d/init.sql healthcheck: test: ["CMD", "mysqladmin", "ping", "-h", "localhost"] timeout: 5s retries: 2 # metabase: # image: metabase/metabase:latest # container_name: metabase # ports: # - "3100:3000" # environment: # MB_DB_TYPE: mysql # MB_DB_DBNAME: ${MYSQL_DATABASE} # MB_DB_HOST: ${MYSQL_HOST} # MB_DB_PORT: ${MYSQL_PORT} # MB_DB_USER: ${MYSQL_USER} # MB_DB_PASS: ${MYSQL_PASSWORD} # depends_on: # - db volumes: mysql_data: