-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
86 lines (71 loc) · 4.22 KB
/
Copy path.env.example
File metadata and controls
86 lines (71 loc) · 4.22 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
# OpenBlog — local development environment configuration
#
# ⚠️ PRODUCTION DEPLOYMENT DOES NOT USE THIS FILE. The prod compose
# (`docker-compose.prod.yaml`) has all env vars inlined — secrets and
# all. This file exists only for `pnpm dev`, vitest, prisma CLI,
# and any scripts that read `process.env` directly via dotenv.
#
# Required vars for local dev: `DATABASE_URL`, `AUTH_SECRET`.
# `BASE_URL` and `PORT` are referenced by the dev server.
#
# Copy this file to `.env` and fill in the values to start.
# ─── Required ─────────────────────────────────────────────────────────────────
# BetterAuth signing secret. Generate with `openssl rand -base64 32`.
# Inject at container start; never bake into a Docker image.
AUTH_SECRET="your-auth-secret-here"
# Deployment-specific PostgreSQL password. Hex is URL-safe for DATABASE_URL.
# Generate with `openssl rand -hex 32`; never use this example value.
POSTGRES_PASSWORD="your-postgres-password-here"
# Public-facing URL the app is served from. Used by BetterAuth's trusted
# origins and the sitemap. Set to the URL you actually reach the app from.
# - Local dev (default compose ports): http://localhost:3000
# - Behind a reverse proxy: https://blog.example.com
BASE_URL="http://localhost:3000"
# ─── Optional: port mapping ───────────────────────────────────────────────────
# Override if 3000 or 5432 is already in use on your host.
APP_HOST_PORT=3000
POSTGRES_HOST_PORT=5432
# ─── Optional: image ─────────────────────────────────────────────────────────
# Pulled from GHCR by default. Pin to a version for production.
OPENBLOG_IMAGE=ghcr.io/iamcoder18/openblog:latest
# PostgreSQL 16 with pg_cron. The default is maintained and published with
# OpenBlog; override only when testing another compatible image.
OPENBLOG_POSTGRES_IMAGE=ghcr.io/iamcoder18/openblog:postgres-16.14-pg-cron-1.6.7
# ─── Optional: app config ────────────────────────────────────────────────────
# Display name shown in titles, nav, footer, RSS feed metadata.
# When set, this overrides the value stored in the dashboard site identity.
BLOG_NAME="OpenBlog"
# Site description shown on the homepage hero, footer, and meta tags.
# When set, this overrides the value stored in the dashboard site identity.
BLOG_DESCRIPTION=""
# Logo URL displayed in the nav and footer. Must be an http(s) URL.
# When set, this overrides the value stored in the dashboard site identity.
SITE_LOGO_URL=""
# Contact email shown on the site (e.g., footer, contact page).
# When set, this overrides the value stored in the dashboard site identity.
SITE_CONTACT_EMAIL=""
# Primary social or profile URL displayed on the site. Must be an http(s) URL.
# When set, this overrides the value stored in the dashboard site identity.
SITE_SOCIAL_URL=""
# Set to "true" to expose /auth/signup publicly. Default "false".
SIGN_UP_ENABLED=false
# ─── Local dev only (not used by docker-compose) ─────────────────────────────
# Port the Next.js dev server binds to. Hardcoded to 4000 by `pnpm dev` in
# package.json5 — change there, not here.
PORT=4000
# Node environment. Use "development" for `pnpm dev`, "production" otherwise.
NODE_ENV="development"
# Disables BetterAuth rate limiting. Used by E2E tests; do not enable in prod.
DISABLE_RATE_LIMITING="false"
# Password recovery email. Leave every SMTP value empty to disable email
# recovery without affecting login, signup, or the rest of the application.
# SMTP_PORT defaults to 587. SMTP_SECURE defaults to true for port 465 and
# false otherwise. SMTP_USER and SMTP_PASSWORD are optional, but must be set
# together when the relay requires authentication.
SMTP_HOST=
SMTP_PORT=
SMTP_SECURE=
SMTP_USER=
SMTP_PASSWORD=
# Example: SMTP_FROM="OpenBlog <noreply@example.com>"
SMTP_FROM=