# 1. 基础镜像(Node 22,匹配 OmniRoute 依赖) FROM node:22-slim # 2. 安装依赖(git、curl 用于构建/健康检查) RUN apt-get update && apt-get install -y --no-install-recommends git curl && rm -rf /var/lib/apt/lists/* # 3. 设置工作目录 WORKDIR /app # 4. 安装 OmniRoute(全局) RUN npm install -g omniroute@latest # 5. 环境变量(强制端口7860、绑定0.0.0.0、关闭自动打开浏览器) ENV PORT=7860 ENV API_HOST=0.0.0.0 ENV DASHBOARD_HOST=0.0.0.0 ENV NEXT_PUBLIC_BASE_URL=https://yadinae-or.hf.space ENV INITIAL_PASSWORD=ORv9z3ShXC ENV NO_OPEN=true # 6. 健康检查(Space 用它判断服务是否正常) HEALTHCHECK --interval=30s --timeout=10s --retries=3 \ CMD curl -f http://localhost:7860/login || exit 1 # 7. 启动命令(绑定0.0.0.0,指定端口) CMD ["omniroute", "--port", "7860"]