File size: 1,537 Bytes
35e3473
 
 
 
 
 
89fb578
856c871
 
 
89fb578
 
35e3473
 
 
 
 
 
 
 
 
 
 
eb76166
3af9e5e
35e3473
7eb2e6e
1b8fa6c
413f7e0
35e3473
 
856c871
 
35e3473
 
7eb2e6e
35e3473
7eb2e6e
 
 
35e3473
 
7eb2e6e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# 核心镜像:Node 22 slim 保证了环境的现代性与轻量化
FROM node:22-slim

# 1. 安装系统依赖
RUN apt-get update && apt-get install -y --no-install-recommends \
    git openssh-client build-essential python3 python3-pip \
    g++ make ca-certificates curl chromium tzdata \
    libnss3 libatk1.0-0 libatk-bridge2.0-0 libcups2 libdrm2 \
    libxcomposite1 libxdamage1 libxext6 libxfixes3 libxrandr2 \
    libgbm1 libasound2 libpangocairo-1.0-0 libpango-1.0-0 \
    && ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
    && echo "Asia/Shanghai" > /etc/timezone \
    && rm -rf /var/lib/apt/lists/*

# 2. 安装 Hugging Face 命令行工具
RUN pip3 install --no-cache-dir huggingface_hub --break-system-packages

# 3. 构建环境优化
RUN update-ca-certificates && \
    git config --global http.sslVerify false && \
    git config --global url."https://github.com/".insteadOf ssh://git@github.com/

# 4. 全局安装 OpenClaw
ENV HOME=/root
RUN npm install -g openclaw@latest zod --unsafe-perm

# 4.1 安装 Feishu 插件依赖
RUN cd /usr/local/lib/node_modules/openclaw && npm install @larksuiteoapi/node-sdk --unsafe-perm

# 5. 设置环境变量
ENV PORT=7860 \
    OPENCLAW_GATEWAY_MODE=local \
    OPENCLAW_BROWSER_PATH=/usr/bin/chromium

# 6. 核心同步引擎 (sync.py)
COPY sync.py /usr/local/bin/sync.py

# 7. 容器入口脚本 (start-openclaw.sh)
COPY start-openclaw.sh /usr/local/bin/start-openclaw
RUN chmod +x /usr/local/bin/start-openclaw

EXPOSE 7860
CMD ["/usr/local/bin/start-openclaw"]