Files
wehub-resource-sync bb5c75ce05
Component Security Validation / Security Audit (push) Has been cancelled
Deploy to Cloudflare Pages / deploy (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 12:38:58 +08:00

39 lines
815 B
Docker

# syntax=docker/dockerfile:1
FROM node:22-alpine
# Install runtime dependencies
RUN apk --no-cache add \
git \
bash \
python3 \
py3-pip \
curl \
&& npm install -g @anthropic-ai/claude-agent-sdk
# Create non-root user for security
RUN adduser -u 10001 -D -s /bin/bash sandboxuser
# Set working directory
WORKDIR /app
# Create output directory
RUN mkdir -p /output && chown sandboxuser:sandboxuser /output
# Copy execution script
COPY execute.js /app/execute.js
COPY package.json /app/package.json
# Install dependencies
RUN npm install --production && \
chown -R sandboxuser:sandboxuser /app
# Switch to non-root user
USER sandboxuser
# Set environment
ENV HOME=/home/sandboxuser
ENV NODE_ENV=production
# Default command (overridden by launcher)
CMD ["node", "/app/execute.js"]