Spaces:
Sleeping
Sleeping
Refactor Dockerfile to install OpenCode as root and set ownership to UID 1000 for compatibility with Hugging Face Spaces. Removed user creation and adjusted installation steps accordingly.
Browse files- Dockerfile +11 -7
Dockerfile
CHANGED
|
@@ -14,19 +14,23 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
| 14 |
git \
|
| 15 |
&& rm -rf /var/lib/apt/lists/*
|
| 16 |
|
| 17 |
-
#
|
| 18 |
-
RUN
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 19 |
|
| 20 |
ENV HOME=/home/user
|
| 21 |
ENV PATH=/home/user/.opencode/bin:$PATH
|
| 22 |
|
| 23 |
-
|
|
|
|
| 24 |
WORKDIR $HOME/app
|
| 25 |
|
| 26 |
-
#
|
| 27 |
-
RUN curl -fsSL https://opencode.ai/install | bash -s -- --no-modify-path
|
| 28 |
-
|
| 29 |
-
# 确保 opencode 在 PATH 中并可用
|
| 30 |
RUN opencode --version
|
| 31 |
|
| 32 |
# Hugging Face Spaces 默认暴露 7860
|
|
|
|
| 14 |
git \
|
| 15 |
&& rm -rf /var/lib/apt/lists/*
|
| 16 |
|
| 17 |
+
# 不创建新用户(HF 构建环境可能已有 UID 1000),改为以 root 安装到 /home/user 再 chown
|
| 18 |
+
RUN mkdir -p /home/user/app
|
| 19 |
+
|
| 20 |
+
# 使用官方安装脚本安装 opencode 到 /home/user/.opencode/bin
|
| 21 |
+
RUN HOME=/home/user curl -fsSL https://opencode.ai/install | bash -s -- --no-modify-path
|
| 22 |
+
|
| 23 |
+
# 将 /home/user 归属给 UID 1000(HF Spaces 运行时使用 UID 1000)
|
| 24 |
+
RUN chown -R 1000:1000 /home/user
|
| 25 |
|
| 26 |
ENV HOME=/home/user
|
| 27 |
ENV PATH=/home/user/.opencode/bin:$PATH
|
| 28 |
|
| 29 |
+
# 以 UID 1000 运行(符合 HF Spaces 要求)
|
| 30 |
+
USER 1000
|
| 31 |
WORKDIR $HOME/app
|
| 32 |
|
| 33 |
+
# 验证 opencode 可用
|
|
|
|
|
|
|
|
|
|
| 34 |
RUN opencode --version
|
| 35 |
|
| 36 |
# Hugging Face Spaces 默认暴露 7860
|