Skip to content

Commit 26caafb

Browse files
wip
1 parent b800b76 commit 26caafb

File tree

2 files changed

+48
-42
lines changed

2 files changed

+48
-42
lines changed

Dockerfile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -240,6 +240,8 @@ RUN mkdir -p /run/postgresql && \
240240

241241
# Make app directory accessible to both root and sourcebot user
242242
RUN chown -R sourcebot:sourcebot /app
243+
# Make data directory accessible to both root and sourcebot user
244+
RUN chown -R sourcebot:sourcebot /data
243245

244246
COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf
245247
COPY prefix-output.sh ./prefix-output.sh

docker-compose.yml

Lines changed: 46 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,62 +1,66 @@
11
services:
22
sourcebot:
33
image: ghcr.io/sourcebot-dev/sourcebot:latest
4-
pull_policy: always
4+
user: sourcebot
5+
restart: always
56
container_name: sourcebot
7+
depends_on:
8+
postgres:
9+
condition: service_healthy
10+
redis:
11+
condition: service_healthy
612
ports:
713
- "3000:3000"
814
volumes:
915
- ./config.json:/data/config.json
1016
- sourcebot_data:/data
1117
environment:
1218
- CONFIG_PATH=/data/config.json
13-
- DATABASE_URL=${DATABASE_URL:-postgresql://postgres@localhost:5432/sourcebot}
14-
- REDIS_URL=${REDIS_URL:-redis://localhost:6379}
1519
- AUTH_URL=${AUTH_URL:-http://localhost:3000}
16-
- AUTH_SECRET=${AUTH_SECRET:-}
17-
- AUTH_CREDENTIALS_LOGIN_ENABLED=${AUTH_CREDENTIALS_LOGIN_ENABLED:-true}
18-
- AUTH_EMAIL_CODE_LOGIN_ENABLED=${AUTH_EMAIL_CODE_LOGIN_ENABLED:-false}
19-
- SMTP_CONNECTION_URL=${SMTP_CONNECTION_URL:-}
20-
- EMAIL_FROM_ADDRESS=${EMAIL_FROM_ADDRESS:-}
20+
- AUTH_SECRET=${AUTH_SECRET:-000000000000000000000000000000000} # CHANGEME: generate via `openssl rand -base64 33`
21+
- SOURCEBOT_ENCRYPTION_KEY=${SOURCEBOT_ENCRYPTION_KEY:-000000000000000000000000000000000} # CHANGEME: generate via `openssl rand -base64 24`
22+
- DATABASE_URL=${DATABASE_URL:-postgresql://postgres:postgres@postgres:5432/postgres} # CHANGEME
23+
- REDIS_URL=${REDIS_URL:-redis://redis:6379} # CHANGEME
2124
- SOURCEBOT_EE_LICENSE_KEY=${SOURCEBOT_EE_LICENSE_KEY:-}
22-
- SOURCEBOT_ENCRYPTION_KEY=${SOURCEBOT_ENCRYPTION_KEY:-}
2325
- SOURCEBOT_TELEMETRY_DISABLED=${SOURCEBOT_TELEMETRY_DISABLED:-false}
24-
- ZOEKT_WEBSERVER_URL=${ZOEKT_WEBSERVER_URL:-http://localhost:6070}
25-
- SHARD_MAX_MATCH_COUNT=${SHARD_MAX_MATCH_COUNT:-}
26-
- TOTAL_MAX_MATCH_COUNT=${TOTAL_MAX_MATCH_COUNT:-}
27-
- ZOEKT_MAX_WALL_TIME_MS=${ZOEKT_MAX_WALL_TIME_MS:-}
2826

29-
# AWS
30-
- AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID:-}
31-
- AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY:-}
32-
- AWS_SESSION_TOKEN=${AWS_SESSION_TOKEN:-}
33-
- AWS_REGION=${AWS_REGION:-}
34-
# OpenAI
35-
- OPENAI_API_KEY=${OPENAI_API_KEY:-}
36-
# Anthropic
37-
- ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY:-}
38-
# Azure
39-
- AZURE_API_KEY=${AZURE_API_KEY:-}
40-
- AZURE_RESOURCE_NAME=${AZURE_RESOURCE_NAME:-}
41-
# DeepSeek
42-
- DEEPSEEK_API_KEY=${DEEPSEEK_API_KEY:-}
43-
# Google gen ai
44-
- GOOGLE_GENERATIVE_AI_API_KEY=${GOOGLE_GENERATIVE_AI_API_KEY:-}
45-
# Google vertex
46-
- GOOGLE_VERTEX_PROJECT=${GOOGLE_VERTEX_PROJECT:-}
47-
- GOOGLE_VERTEX_REGION=${GOOGLE_VERTEX_REGION:-}
48-
- GOOGLE_APPLICATION_CREDENTIALS=${GOOGLE_APPLICATION_CREDENTIALS:-}
49-
- GOOGLE_VERTEX_THINKING_BUDGET_TOKENS=${GOOGLE_VERTEX_THINKING_BUDGET_TOKENS:-}
50-
- GOOGLE_VERTEX_INCLUDE_THOUGHTS=${GOOGLE_VERTEX_INCLUDE_THOUGHTS:-}
51-
# XAI
52-
- XAI_API_KEY=${XAI_API_KEY:-}
53-
# Mistral
54-
- MISTRAL_API_KEY=${MISTRAL_API_KEY:-}
55-
# Openrouter
56-
- OPENROUTER_API_KEY=${OPENROUTER_API_KEY:-}
27+
# For the full list of environment variables see:
28+
# https://docs.sourcebot.dev/docs/configuration/environment-variables
5729

58-
restart: unless-stopped
30+
postgres:
31+
image: docker.io/postgres:${POSTGRES_VERSION:-latest}
32+
restart: always
33+
healthcheck:
34+
test: ["CMD-SHELL", "pg_isready -U postgres"]
35+
interval: 3s
36+
timeout: 3s
37+
retries: 10
38+
environment:
39+
POSTGRES_USER: postgres
40+
POSTGRES_PASSWORD: postgres # CHANGEME
41+
POSTGRES_DB: postgres
42+
ports:
43+
- 127.0.0.1:5432:5432
44+
volumes:
45+
- sourcebot_postgres_data:/var/lib/postgresql/data
46+
47+
redis:
48+
image: docker.io/redis:${REDIS_VERSION:-latest}
49+
restart: always
50+
ports:
51+
- 127.0.0.1:6379:6379
52+
healthcheck:
53+
test: ["CMD", "redis-cli", "ping"]
54+
interval: 3s
55+
timeout: 10s
56+
retries: 10
57+
volumes:
58+
- sourcebot_redis_data:/data
5959

6060
volumes:
6161
sourcebot_data:
6262
driver: local
63+
sourcebot_postgres_data:
64+
driver: local
65+
sourcebot_redis_data:
66+
driver: local

0 commit comments

Comments
 (0)