yi124773651 commited on
Commit
2fdcbdb
·
verified ·
1 Parent(s): e265ec8

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +17 -10
Dockerfile CHANGED
@@ -1,18 +1,25 @@
1
  FROM eceasy/cli-proxy-api:latest
2
 
3
- # 切换到 root 确保有权限执行
4
  USER root
5
 
6
- # 设置工作目录(通常基础镜像可能是 / 或 /app)
7
- WORKDIR /
8
 
9
- # 关键修正尝试在整个系统中查找名为 cli-proxy-api文件并赋予执行权限
10
- # 这一步是为了防止文件在 /usr/local/bin 或其他位置
11
- RUN find / -name "cli-proxy-api" -exec chmod +x {} +
12
-
13
- # 设置 HF 要求的端口环境变量
14
  ENV PORT=7860
 
 
 
 
 
 
 
15
  EXPOSE 7860
16
 
17
- # 动态启动脚本:先找路径,再执行
18
- CMD ["sh", "-c", "export EXE_PATH=$(find / -name 'cli-proxy-api' | head -n 1); if [ -z \"$EXE_PATH\" ]; then echo 'Executable not found!'; exit 1; fi; echo \"Starting $EXE_PATH...\"; exec $EXE_PATH --port 7860"]
 
 
 
 
 
 
1
  FROM eceasy/cli-proxy-api:latest
2
 
 
3
  USER root
4
 
5
+ # 设置工作目录
6
+ WORKDIR /CLIProxyAPI
7
 
8
+ # 环境变量让程序监听 HF 7860
 
 
 
 
9
  ENV PORT=7860
10
+ ENV TZ=Asia/Shanghai
11
+
12
+ # 确保必要的目录存在并可写(适配 HF 的无根环境)
13
+ RUN mkdir -p /CLIProxyAPI/logs /root/.cli-proxy-api && \
14
+ chmod -R 777 /CLIProxyAPI /root
15
+
16
+ # 暴露端口
17
  EXPOSE 7860
18
 
19
+ # 启动脚本逻辑
20
+ # 1. 检查是否有配置文件,没有就用模板
21
+ # 2. 运行主程序并强制指定端口
22
+ CMD ["sh", "-c", " \
23
+ if [ ! -f config.yaml ]; then cp config.example.yaml config.yaml 2>/dev/null || echo 'no config'; fi; \
24
+ ./cli-proxy-api --port 7860 \
25
+ "]