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" # 新增加的用户后台信息管理系统 frontend: image: zstar1003/ragflowplus-management-web:v0.1.2 build: context: . dockerfile: Dockerfile target: frontend ports: - "8888:80" depends_on: - backend environment: - API_BASE_URL=/api networks: - ragflow backend: image: zstar1003/ragflowplus-management-server:v0.1.2 build: context: . dockerfile: Dockerfile target: backend ports: - "5000:5000" environment: - FLASK_ENV=development - CORS_ALLOWED_ORIGINS=http://frontend - MANAGEMENT_ADMIN_USERNAME=${MANAGEMENT_ADMIN_USERNAME:-admin} - MANAGEMENT_ADMIN_PASSWORD=${MANAGEMENT_ADMIN_PASSWORD:-12345678} - MANAGEMENT_JWT_SECRET=${MANAGEMENT_JWT_SECRET:-12345678} extra_hosts: - "host.docker.internal:host-gateway" networks: - ragflow