include: - ./docker-compose-base.yml services: ragflow: depends_on: mysql: condition: service_healthy image: ${RAGFLOW_IMAGE} container_name: ragflow-server ports: - ${SVR_HTTP_PORT}:9380 - 80:80 - 443:443 volumes: - ./ragflow-logs:/ragflow/logs - ./nginx/ragflow.conf:/etc/nginx/conf.d/ragflow.conf - ./nginx/proxy.conf:/etc/nginx/proxy.conf - ./nginx/nginx.conf:/etc/nginx/nginx.conf env_file: .env environment: - TZ=${TIMEZONE} - HF_ENDPOINT=${HF_ENDPOINT} - MACOS=${MACOS} networks: - ragflow restart: on-failure # https://docs.docker.com/engine/daemon/prometheus/#create-a-prometheus-configuration # If you're using Docker Desktop, the --add-host flag is optional. This flag makes sure that the host's internal IP gets exposed to the Prometheus container. extra_hosts: - "host.docker.internal:host-gateway" management-frontend: image: zstar1003/ragflowplus-management-web:v0.1.1 ports: - "8080:80" depends_on: - management-backend environment: - API_URL=http://management-backend:5000 networks: - ragflow management-backend: image: zstar1003/ragflowplus-management-server:v0.1.1 ports: - "5000:5000" environment: - FLASK_ENV=development - CORS_ALLOWED_ORIGINS=http://localhost:8080,http://management-frontend extra_hosts: - "host.docker.internal:host-gateway" networks: - ragflow