# Render Blueprint. Deploys the same three processes as docker-compose.yml: a public Caddy # gateway, a private server with a persistent disk, and a private web app. # https://render.com/deploy?repo=https://github.com/superworker-ai/openstaff services: - type: web name: openstaff-gateway runtime: docker dockerfilePath: ./docker/gateway/Dockerfile dockerContext: . plan: starter healthCheckPath: /api/ready envVars: - key: PORT value: "3000" - key: SERVER_UPSTREAM value: openstaff-server:8787 - key: WEB_UPSTREAM value: openstaff-web:3001 - type: pserv name: openstaff-server runtime: docker dockerfilePath: ./docker/app.Dockerfile dockerContext: . plan: standard disk: name: openstaff-data mountPath: /data sizeGB: 10 envVars: - key: OPENSTAFF_TARGET value: server # Render mounts disks root-owned; run the server as root so /data is writable. - key: OPENSTAFF_USER value: root - key: NODE_ENV value: production - key: DATA_DIR value: /data - key: SERVER_PORT value: "8787" - key: SECRETS_KEY generateValue: true # Fill these in the Render dashboard when prompted. PUBLIC_APP_URL is the gateway's # https://openstaff-gateway-.onrender.com URL. - key: PUBLIC_APP_URL sync: false - key: SIGNUP_CODE sync: false - key: XAI_API_KEY sync: false - key: ANTHROPIC_API_KEY sync: false - key: OPENAI_API_KEY sync: false - key: AI_GATEWAY_API_KEY sync: false - key: E2B_API_KEY sync: false - type: pserv name: openstaff-web runtime: docker dockerfilePath: ./docker/app.Dockerfile dockerContext: . plan: starter envVars: - key: OPENSTAFF_TARGET value: web - key: NODE_ENV value: production - key: PORT value: "3001" - key: PUBLIC_API_URL value: http://openstaff-server:8787