add db compose

This commit is contained in:
Sarah Wooders 2025-04-21 08:41:24 -07:00
parent 9ba2c7fe8b
commit 0c332f475e

102
scripts/docker-compose.yml Normal file
View File

@ -0,0 +1,102 @@
version: '3.7'
services:
redis:
image: redis:alpine
container_name: redis
healthcheck:
test: ['CMD-SHELL', 'redis-cli ping | grep PONG']
interval: 1s
timeout: 3s
retries: 5
ports:
- '6379:6379'
volumes:
- ./data/redis:/data
command: redis-server --appendonly yes
postgres:
image: ankane/pgvector
container_name: postgres
healthcheck:
test: ['CMD-SHELL', 'pg_isready -U postgres']
interval: 1s
timeout: 3s
retries: 5
ports:
- '5432:5432'
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: letta
volumes:
- ./data/postgres:/var/lib/postgresql/data
- ./scripts/postgres-db-init/init.sql:/docker-entrypoint-initdb.d/init.sql
undertaker:
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
container_name: letta-undertaker
build:
context: ./apps/credit-undertaker
dockerfile: Dockerfile
target: undertaker
environment:
DATABASE_URL: postgresql://postgres:postgres@postgres:5432/letta
LETTA_PG_USER: ${LETTA_PG_USER}
LETTA_PG_PASSWORD: ${LETTA_PG_PASSWORD}
LETTA_PG_DB: ${LETTA_PG_DB}
LETTA_PG_PORT: ${LETTA_PG_PORT}
LETTA_PG_HOST: ${LETTA_PG_HOST}
web:
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
container_name: letta-web
build:
context: ./apps/web
dockerfile: Dockerfile
target: web
ports:
- '3000:3000'
environment:
DATABASE_URL: postgresql://postgres:postgres@postgres:5432/letta
REDIS_URL: redis://redis:6379
GOOGLE_CLIENT_ID: ${GOOGLE_CLIENT_ID}
GOOGLE_CLIENT_SECRET: ${GOOGLE_CLIENT_SECRET}
GOOGLE_REDIRECT_URI: ${GOOGLE_REDIRECT_URI}
LETTA_AGENTS_ENDPOINT: ${LETTA_AGENTS_ENDPOINT}
NEXT_PUBLIC_CURRENT_HOST: ${NEXT_PUBLIC_CURRENT_HOST}
core:
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
container_name: letta-agents
build:
context: ./libs/core-deploy-configs
dockerfile: Dockerfile
target: development
ports:
- '8283:8283'
environment:
LETTA_PG_USER: postgres
LETTA_PG_PASSWORD: postgres
LETTA_PG_DB: memgpt
LETTA_PG_PORT: 5432
LETTA_PG_HOST: postgres
migrations:
depends_on:
postgres:
condition: service_healthy
container_name: letta-migrations
build:
context: .
dockerfile: Dockerfile
target: migrations
environment:
DATABASE_URL: postgresql://postgres:postgres@postgres:5432/letta