[Question] Sandbox deployment fails with "AggregateError: All promises were rejected" - Scalebox template and setup inquiry
Hi team,
I'm trying to deploy Refly using Docker Compose, but I'm encountering issues with the sandbox service when executing code.
Problem Description
When I try to use the code execution feature, the sandbox service returns an error:
AggregateError: All promises were rejected
What I've tried: Deployment setup: Successfully started all containers using docker compose up -d
Scalebox API key configuration: Added PROVIDERS_SCALEBOX_API_KEY=sk-xxx to the .env file and restarted the refly-sandbox container
Error persists: After restarting, I still see the following errors in the logs:
{"level":"warn","error":{"name":"ScaleboxError"},"msg":"Race failed"} {"level":"warn","error":{"name":"AuthenticationError"},"msg":"Race failed"} {"level":"error","msg":"AggregateError: All promises were rejected"} The logs show:
Scalebox pool fails with ScaleboxError E2B pool fails with AuthenticationError (expected, as I don't have an E2B key) The system is using "race mode" and both providers fail
Questions
1. Missing Configuration
Did I miss any required configuration steps? Are there any other environment variables or settings needed besides the API key?
2. Scalebox Template Availability
The docker-compose configuration uses slim-v2 as the default template name:
- PROVIDERS_SCALEBOX_TEMPLATE_NAME=${PROVIDERS_SCALEBOX_TEMPLATE_NAME:-slim-v2}
Questions:
Is the slim-v2 template publicly available on Scalebox? Is the sandbox environment open-source? Where can I find the template configuration or how do I create my own?
3. File Synchronization Approach
I'm curious about how file synchronization works between the sandbox and the storage (S3/MinIO):
Does the implementation use:
- Mount S3/MinIO directly as a filesystem (e.g., via s3fs/geesefs)?
- or, Sync files to/from a working directory using s3Config + s3DrivePath, then upload only the diff/changed files after execution? This information would help me understand the architecture better and potentially debug the issue.
Logs
Full sandbox logs{"level":"info","context":"ScaleboxPool","apiKeySet":true,"msg":"ScaleboxPool initialized - verify template name"} {"level":"info","context":"ProviderService","msg":"Use race mode"} {"level":"info","context":"ScaleboxPool","templateName":"slim-v2","msg":"Creating new sandbox"} {"level":"warn","context":"ProviderService","error":{"name":"ScaleboxError"},"msg":"Race failed"} {"level":"error","context":"SubscriberService","error":"AggregateError: All promises were rejected","msg":"Request failed"}
Any guidance or documentation links would be greatly appreciated. Thank you!Source: refly-ai/refly