Import the existing local project snapshot. This commit organizes existing files; it does not represent newly developed functionality.
58 lines
1.7 KiB
Bash
58 lines
1.7 KiB
Bash
# Teknav production backend env template.
|
|
# Copy to /etc/teknav/backend.env on the Linux host and fill real secrets there.
|
|
# Never commit a filled production env file.
|
|
|
|
DATABASE_URL="postgresql://teknav:CHANGE_ME_STRONG_DB_PASSWORD@127.0.0.1:5432/teknav?schema=public"
|
|
REDIS_URL="redis://127.0.0.1:6379"
|
|
|
|
SESSION_SECRET="CHANGE_ME_48_BYTE_RANDOM_SECRET"
|
|
COOKIE_DOMAIN=".teknav.ir"
|
|
CORS_ORIGINS="https://www.teknav.ir,https://teknav.ir"
|
|
OAUTH_CALLBACK_BASE="https://www.teknav.ir"
|
|
NODE_ENV="production"
|
|
PORT=3010
|
|
UPLOAD_DIR="/var/lib/teknav/uploads"
|
|
BACKUP_DIR="/var/backups/teknav"
|
|
LOG_LEVEL="info"
|
|
|
|
# OAuth providers are optional. Leave blank to hide/disable the provider.
|
|
GOOGLE_CLIENT_ID=
|
|
GOOGLE_CLIENT_SECRET=
|
|
GITHUB_CLIENT_ID=
|
|
GITHUB_CLIENT_SECRET=
|
|
|
|
# Email delivery. If SMTP_HOST is blank, mail jobs log instead of sending.
|
|
SMTP_HOST=
|
|
SMTP_PORT=587
|
|
SMTP_USER=
|
|
SMTP_PASS=
|
|
SMTP_FROM="no-reply@teknav.ir"
|
|
# Email to receive daily client error digest (leave empty to disable)
|
|
ADMIN_ALERT_EMAIL=
|
|
|
|
# SMS OTP / 2FA.
|
|
SMS_PROVIDER="kavenegar"
|
|
SMS_API_KEY=
|
|
SMS_SENDER=
|
|
|
|
# Web push. Generate once on the server:
|
|
# node -e "const wp=require('web-push');const k=wp.generateVAPIDKeys();console.log(JSON.stringify(k,null,2))"
|
|
VAPID_PUBLIC_KEY=
|
|
VAPID_PRIVATE_KEY=
|
|
VAPID_SUBJECT="mailto:admin@teknav.ir"
|
|
|
|
# Zarinpal membership payments. Until merchant id is set, subscribe returns payment_unavailable.
|
|
ZARINPAL_MERCHANT_ID=
|
|
ZARINPAL_SANDBOX=0
|
|
MEMBERSHIP_PRICE_IRR=5000000
|
|
MEMBERSHIP_DURATION_DAYS=365
|
|
|
|
# Local disk is the production default.
|
|
STORAGE_BACKEND="local"
|
|
|
|
# Future S3-compatible storage. Only set STORAGE_BACKEND=s3 after wiring a real client.
|
|
S3_ENDPOINT=
|
|
S3_BUCKET=
|
|
S3_ACCESS_KEY=
|
|
S3_SECRET_KEY=
|