huanbao commited on
Commit
1c79b27
·
verified ·
1 Parent(s): 2882815

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +15 -13
Dockerfile CHANGED
@@ -2,7 +2,7 @@ FROM node:22-bookworm-slim
2
 
3
  ENV PIP_BREAK_SYSTEM_PACKAGES=1
4
 
5
- # 1. 安装基础依赖
6
  RUN apt-get update && apt-get install -y --no-install-recommends \
7
  python3 \
8
  python3-pip \
@@ -16,28 +16,30 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
16
  unzip \
17
  && rm -rf /var/lib/apt/lists/*
18
 
19
- # 2. 安装 Claude Code 和 CloudCLI
20
  RUN npm install -g @anthropic-ai/claude-code @cloudcli-ai/cloudcli task-master-ai pnpm \
21
  && npm cache clean --force
22
 
23
- # 3. 安装官方 Cursor Agent CLI
24
- RUN curl -fsSL https://cursor.com/install | bash
 
 
 
 
25
 
26
- # 4. 设置环境变量,确保能调到 ~/.local/bin 下的 cursor agent
27
- ENV PATH="/home/node/.local/bin:${PATH}"
28
- ENV HOME=/home/node
29
- ENV HOST=0.0.0.0
30
- ENV PORT=7860
31
- ENV SERVER_PORT=7860
32
-
33
- # 5. 创建挂载点与配置目录,并将所有权赋予 UID 1000 (node 用户)
34
  RUN mkdir -p /data /home/node/app /home/node/.claude /home/node/.codex /home/node/.cloudcli /home/node/.taskmaster /home/node/.cursor && \
35
  chown -R 1000:1000 /data /home/node
36
 
37
- # 6. 复制入口脚本
38
  COPY entrypoint.sh /entrypoint.sh
39
  RUN chmod +x /entrypoint.sh
40
 
 
 
 
 
 
41
  WORKDIR /data/app
42
  EXPOSE 7860
43
 
 
2
 
3
  ENV PIP_BREAK_SYSTEM_PACKAGES=1
4
 
5
+ # 1. 大幅瘦身 apt:加上 --no-install-recommends 剔除一切非必要依赖
6
  RUN apt-get update && apt-get install -y --no-install-recommends \
7
  python3 \
8
  python3-pip \
 
16
  unzip \
17
  && rm -rf /var/lib/apt/lists/*
18
 
19
+ # 2. 安装核心 CLI 工具并清理 npm 缓存
20
  RUN npm install -g @anthropic-ai/claude-code @cloudcli-ai/cloudcli task-master-ai pnpm \
21
  && npm cache clean --force
22
 
23
+ # 3. 安装官方 Cursor CLI (原生二进制),并移至公共 PATH (/usr/local/bin)
24
+ RUN curl -fsSL https://cursor.com/install | bash && \
25
+ ( [ -d /root/.local/bin ] && cp -f /root/.local/bin/* /usr/local/bin/ || true ) && \
26
+ ( [ -d /root/.cursor/bin ] && cp -f /root/.cursor/bin/* /usr/local/bin/ || true ) && \
27
+ ( [ -f /usr/local/bin/agent ] && ln -sf /usr/local/bin/agent /usr/local/bin/cursor-agent || true ) && \
28
+ ( [ -f /usr/local/bin/agent ] && ln -sf /usr/local/bin/agent /usr/local/bin/cursor || true )
29
 
30
+ # 4. 创建挂载点与配置目录,并将所有权赋予 UID 1000 (node 用户)
 
 
 
 
 
 
 
31
  RUN mkdir -p /data /home/node/app /home/node/.claude /home/node/.codex /home/node/.cloudcli /home/node/.taskmaster /home/node/.cursor && \
32
  chown -R 1000:1000 /data /home/node
33
 
34
+ # 5. 复制入口脚本并设置权限
35
  COPY entrypoint.sh /entrypoint.sh
36
  RUN chmod +x /entrypoint.sh
37
 
38
+ ENV HOME=/home/node
39
+ ENV HOST=0.0.0.0
40
+ ENV PORT=7860
41
+ ENV SERVER_PORT=7860
42
+
43
  WORKDIR /data/app
44
  EXPOSE 7860
45