| # 使用 Ubuntu 基础镜像以确保更好的兼容性 | |
| FROM ubuntu:22.04 | |
| # 设置环境变量避免交互式提示 | |
| ENV DEBIAN_FRONTEND=noninteractive | |
| COPY service/ /.system/service | |
| COPY script/ /.system/script | |
| # RUN chmod +x /service/*.sh | |
| RUN find /.system -type f -name "*.sh" -exec chmod +x {} \; | |
| RUN find /.system -type f -name "*.js" -exec chmod +x {} \; | |
| # 创建 OpenCode 全局配置目录 | |
| COPY .config/ /root/.config | |
| COPY .claude/ /root/.claude | |
| RUN mkdir -p /.backup | |
| # # 将 /root/.config 目录及子目录下所有的 .md 文件权限修改为:644 | |
| # RUN find /root/.config -type f -name "*.md" -exec chmod 644 {} \; | |
| # # 添加健康检查 | |
| # HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \ | |
| # CMD curl -f http://localhost:7860/global/health || exit 1 | |
| # 暴露 Hugging Face Spaces 标准端口 | |
| EXPOSE 7860 | |
| # # 设置网络环境变量 | |
| # ENV HTTP_PROXY= | |
| # ENV HTTPS_PROXY= | |
| # ENV NO_PROXY=localhost,127.0.0.1,0.0.0.0 | |
| # # 明确禁用服务器认证,确保公开访问 | |
| # # 清除所有可能导致认证的环境变量 | |
| # ENV OPENCODE_SERVER_PASSWORD="" | |
| # ENV OPENCODE_SERVER_USERNAME="" | |
| # ENV OPENCODE_AUTH_REQUIRED=false | |
| # # 优化网络配置 | |
| # ENV NODE_OPTIONS="--max-http-header-size=16384 --max-old-space-size=2048" | |
| # # 网络优化设置 | |
| # ENV NODE_OPTIONS="--max-http-header-size=16384 --max-old-space-size=2048" | |
| # 设置调试级别 | |
| ENV NODE_ENV=production | |
| ENV LOG_LEVEL=info | |
| # 使用 opencode serve 启动服务器 | |
| # 这将启动 API 服务器,内置 Web 界面 | |
| # 添加 CORS 支持以允许跨域访问 | |
| CMD ["/.system/service/start-services.sh"] | |