Repository navigation
Expand file tree
/
Copy path.env.example
More file actions
88 lines (71 loc) · 2.52 KB
/
Copy path.env.example
File metadata and controls
88 lines (71 loc) · 2.52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
# Copy to .env and fill in before: docker compose --env-file .env -f docker-compose.yml up -d --build
#
# Generate secrets:
# openssl rand -hex 32 # ENCRYPTION_KEY
# openssl rand -base64 48 # SESSION_SECRET
# openssl rand -base64 24 # POSTGRES_PASSWORD
# ── Compose / TLS ──
DOMAIN=servicebeard.example.com
ACME_EMAIL=you@example.com
# Path to a plugin extension checkout for image builds (OSS-only: leave unset or use ../../extensions-stub)
# EXTENSION_DIR=/opt/servicebeard/cloud
# ── Database (postgres service) ──
POSTGRES_USER=servicebeard
POSTGRES_PASSWORD=change-me
POSTGRES_DB=servicebeard
# ── App secrets ──
ENCRYPTION_KEY=0000000000000000000000000000000000000000000000000000000000000000
SESSION_SECRET=change-me-to-a-long-random-string
NODE_ENV=production
LOG_LEVEL=info
# Public URLs — must match DOMAIN and use https in production
# OAuth callback for GitHub, GitLab, and OIDC defaults to {WEB_URL}/api/auth/callback
API_URL=https://servicebeard.example.com
WEB_URL=https://servicebeard.example.com
WEBHOOK_BASE_URL=https://servicebeard.example.com
# Passkeys (local login) — defaults derived from WEB_URL when unset
WEBAUTHN_RP_ID=servicebeard.example.com
WEBAUTHN_ORIGIN=https://servicebeard.example.com
# ── Login providers (enable at least one) ──
LOCAL_LOGIN=true
LOCAL_LOGIN_SIGNUP=true
OIDC_LOGIN=false
OIDC_SIGNUP=true
OIDC_PROVIDER_NAME=
OIDC_ISSUER=
OIDC_CLIENT_ID=
OIDC_CLIENT_SECRET=
GITHUB_LOGIN=false
GITHUB_SIGNUP=true
GITHUB_CLIENT_ID=
GITHUB_CLIENT_SECRET=
# GITHUB_APP_ID=
# GITHUB_APP_PRIVATE_KEY_PATH=secrets/github-app.pem
GITLAB_LOGIN=false
GITLAB_SIGNUP=true
GITLAB_BASE_URL=https://gitlab.com
GITLAB_CLIENT_ID=
GITLAB_CLIENT_SECRET=
LINEAR_LOGIN=false
LINEAR_SIGNUP=true
LINEAR_CLIENT_ID=
LINEAR_CLIENT_SECRET=
# Worker poll intervals (seconds, minimum 60)
IMAP_POLL_INTERVAL_SECONDS=60
COMMENT_POLL_INTERVAL_SECONDS=120
# Re-scan IMAP this many hours before the ingest watermark (1–168, default 24)
# IMAP_POLL_OVERLAP_HOURS=24
# Blocked outbound mail ports on this host (comma-separated). When set, the
# project configuration form warns if a chosen IMAP/SMTP port is listed.
# BLOCKED_IMAP_PORTS=143
# BLOCKED_SMTP_PORTS=465,25
# Worker concurrency and SMTP connection pooling
SEND_EMAIL_CONCURRENCY=5
IMAP_POLL_CONCURRENCY=3
COMMENT_POLL_CONCURRENCY=3
SMTP_MAX_CONNECTIONS=3
SMTP_MAX_MESSAGES=100
SMTP_IDLE_TTL_MS=60000
SMTP_MAX_POOLS=50
# ── Plugin extension (optional) ──
# SB_EXTENSION_MANIFEST is set automatically inside images when an extension is baked in.