Add Docker Compose configuration for web, code-interpreter, and Redis services
- Introduced a new `docker-compose.yaml` file to define services for the application. - Configured the `web` service with environment variables for production and port mapping. - Added a `code-interpreter` service with its own environment variable and volume setup. - Included a `redis` service using the Alpine image with persistent volume for data storage. - Ensured proper dependency management between services.
This commit is contained in:
parent
15d5ac5a61
commit
d468ecca74
60
docker-compose.yaml
Normal file
60
docker-compose.yaml
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
version: '3.8'
|
||||||
|
|
||||||
|
services:
|
||||||
|
web:
|
||||||
|
build:
|
||||||
|
context: .
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
ports:
|
||||||
|
- "3000:3000"
|
||||||
|
environment:
|
||||||
|
- NODE_ENV=production
|
||||||
|
- XAI_API_KEY=${XAI_API_KEY}
|
||||||
|
- UPSTASH_REDIS_REST_URL=${UPSTASH_REDIS_REST_URL}
|
||||||
|
- UPSTASH_REDIS_REST_TOKEN=${UPSTASH_REDIS_REST_TOKEN}
|
||||||
|
- ELEVENLABS_API_KEY=${ELEVENLABS_API_KEY}
|
||||||
|
- TAVILY_API_KEY=${TAVILY_API_KEY}
|
||||||
|
- EXA_API_KEY=${EXA_API_KEY}
|
||||||
|
- TMDB_API_KEY=${TMDB_API_KEY}
|
||||||
|
- YT_ENDPOINT=${YT_ENDPOINT}
|
||||||
|
- FIRECRAWL_API_KEY=${FIRECRAWL_API_KEY}
|
||||||
|
- OPENWEATHER_API_KEY=${OPENWEATHER_API_KEY}
|
||||||
|
- SANDBOX_TEMPLATE_ID=${SANDBOX_TEMPLATE_ID}
|
||||||
|
- GOOGLE_MAPS_API_KEY=${GOOGLE_MAPS_API_KEY}
|
||||||
|
- MAPBOX_ACCESS_TOKEN=${MAPBOX_ACCESS_TOKEN}
|
||||||
|
- AZURE_TRANSLATOR_KEY=${AZURE_TRANSLATOR_KEY}
|
||||||
|
- AZURE_TRANSLATOR_LOCATION=${AZURE_TRANSLATOR_LOCATION}
|
||||||
|
- AZURE_RESOURCE_NAME=${AZURE_RESOURCE_NAME}
|
||||||
|
- AZURE_API_KEY=${AZURE_API_KEY}
|
||||||
|
- TRIPADVISOR_API_KEY=${TRIPADVISOR_API_KEY}
|
||||||
|
- AVIATION_STACK_API_KEY=${AVIATION_STACK_API_KEY}
|
||||||
|
- CRON_SECRET=${CRON_SECRET}
|
||||||
|
- BLOB_READ_WRITE_TOKEN=${BLOB_READ_WRITE_TOKEN}
|
||||||
|
- NEXT_PUBLIC_MAPBOX_TOKEN=${NEXT_PUBLIC_MAPBOX_TOKEN}
|
||||||
|
- NEXT_PUBLIC_POSTHOG_KEY=${NEXT_PUBLIC_POSTHOG_KEY}
|
||||||
|
- NEXT_PUBLIC_POSTHOG_HOST=${NEXT_PUBLIC_POSTHOG_HOST}
|
||||||
|
- NEXT_PUBLIC_GOOGLE_MAPS_API_KEY=${NEXT_PUBLIC_GOOGLE_MAPS_API_KEY}
|
||||||
|
volumes:
|
||||||
|
- .:/app
|
||||||
|
- /app/node_modules
|
||||||
|
depends_on:
|
||||||
|
- code-interpreter
|
||||||
|
|
||||||
|
code-interpreter:
|
||||||
|
build:
|
||||||
|
context: .
|
||||||
|
dockerfile: e2b.Dockerfile
|
||||||
|
environment:
|
||||||
|
- E2B_API_KEY=${E2B_API_KEY}
|
||||||
|
volumes:
|
||||||
|
- ./certificates:/app/certificates
|
||||||
|
|
||||||
|
redis:
|
||||||
|
image: redis:alpine
|
||||||
|
ports:
|
||||||
|
- "6379:6379"
|
||||||
|
volumes:
|
||||||
|
- redis_data:/data
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
redis_data:
|
||||||
Loading…
Reference in New Issue
Block a user