deepseek-harness/Dockerfile

43 lines
1.4 KiB
Text
Raw Normal View History

2026-09-03 06:09:59 +00:00
FROM node:22-bookworm
# Install Nginx
RUN apt-get update && apt-get install -y nginx-light && rm -rf /var/lib/apt/lists/*
2026-09-03 06:09:59 +00:00
WORKDIR /app
# Enable pnpm
2026-09-03 06:09:59 +00:00
RUN corepack enable && corepack prepare pnpm@latest --activate
# Copy source code
2026-09-03 06:09:59 +00:00
COPY . .
# Patch out the client-side browser/localhost restriction before building
RUN grep -rl "settings are unavailable" . | xargs -r sed -i 's/settings are unavailable in this browser/settings enabled/g' || true
RUN find . -type f \( -name "*.ts" -o -name "*.tsx" -o -name "*.js" -o -name "*.jsx" \) -exec sed -i 's/isLocalhost/true/g' {} + || true
# Install dependencies and build the patched source
2026-09-03 06:09:59 +00:00
RUN pnpm install
RUN pnpm run build
# Create workspaces directory
RUN mkdir -p /app/workspaces
# Nginx config spoofing local loopback
RUN echo 'server { \
listen 3080; \
location / { \
proxy_pass http://127.0.0.1:3081; \
proxy_set_header Host 127.0.0.1:3081; \
proxy_set_header Origin http://127.0.0.1:3081; \
proxy_set_header Referer http://127.0.0.1:3081/; \
proxy_set_header X-Real-IP 127.0.0.1; \
proxy_set_header X-Forwarded-For 127.0.0.1; \
proxy_http_version 1.1; \
proxy_set_header Upgrade $http_upgrade; \
proxy_set_header Connection "upgrade"; \
} \
}' > /etc/nginx/sites-available/default
2026-09-03 06:09:59 +00:00
EXPOSE 3080
CMD nginx && node --import tsx/esm apps/cli/src/bin.ts web --port 3081 --no-open