dragg2 commited on
Commit
a5b4656
·
verified ·
1 Parent(s): cf9ae3f

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +3 -10
Dockerfile CHANGED
@@ -1,22 +1,15 @@
1
- # 1. 从官方推荐的预构建镜像开始
2
  FROM verofess/grok2api
3
 
4
- # 2. 临时切换到 root 用户,以获取创建目录和修改权限的权力
5
  USER root
6
 
7
- # 3. 创建应用程序硬编码需要的 /data 目录,并将其所有权交给 pwuser
8
- # (pwuser 是该系列基础镜像默认的运行用户)
9
- # 这一步彻底解决了我们之前反复遇到的 PermissionError: [Errno 13] Permission denied: '/data' 问题
10
- RUN mkdir /data && chown -R pwuser:pwuser /data
11
 
12
- # 4. 覆盖环境变量,将端口从默认的 5200 修改为 Hugging Face 要求的 7860
13
  ENV PORT=7860
14
 
15
- # 5. 暴露新的端口
16
  EXPOSE 7860
17
 
18
- # 6. 为了安全,切换回将要运行应用的普通用户 pwuser
19
  USER pwuser
20
 
21
- # 7. 覆盖容器的启动命令,确保 gunicorn 绑定到我们新设置的 $PORT 端口上
22
  CMD ["bash", "-lc", "gunicorn wsgi:app --bind 0.0.0.0:${PORT:-7860} --workers ${WORKERS:-1} --threads ${THREADS:-8} --worker-class gthread --timeout ${TIMEOUT:-180}"]
 
 
1
  FROM verofess/grok2api
2
 
3
+ # 临时切换到 root 用户
4
  USER root
5
 
6
+ RUN chown -R pwuser:pwuser /app
 
 
 
7
 
 
8
  ENV PORT=7860
9
 
 
10
  EXPOSE 7860
11
 
12
+ # 为了安全,切换回将要运行应用的普通用户 pwuser
13
  USER pwuser
14
 
 
15
  CMD ["bash", "-lc", "gunicorn wsgi:app --bind 0.0.0.0:${PORT:-7860} --workers ${WORKERS:-1} --threads ${THREADS:-8} --worker-class gthread --timeout ${TIMEOUT:-180}"]