Internal
Public Access
Add stack.env.example for Portainer git deployments
This allows deploying from git repository in Portainer by providing an example environment variables file. Users can copy this and fill in their actual values in Portainer's environment variables section. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.5
parent
6e18baf502
commit
991d4f1eaa
@@ -0,0 +1,138 @@
|
|||||||
|
# ===================================================================
|
||||||
|
# KeepItGoing Server - Portainer Stack Environment Configuration
|
||||||
|
# ===================================================================
|
||||||
|
# This file is an EXAMPLE for Portainer deployments from git repository.
|
||||||
|
# When deploying in Portainer:
|
||||||
|
# 1. Copy the contents of this file
|
||||||
|
# 2. Paste into the "Environment variables" section in Portainer
|
||||||
|
# 3. Replace all placeholder values with your actual values
|
||||||
|
# DO NOT commit your actual stack.env file to version control!
|
||||||
|
|
||||||
|
# ===================================================================
|
||||||
|
# Django Core Settings
|
||||||
|
# ===================================================================
|
||||||
|
|
||||||
|
# SECURITY WARNING: Generate a strong secret key!
|
||||||
|
# Generate with: python -c "from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())"
|
||||||
|
SECRET_KEY=CHANGE_ME_GENERATE_A_STRONG_SECRET_KEY_50_PLUS_CHARACTERS
|
||||||
|
|
||||||
|
# Debug mode (MUST be False in production)
|
||||||
|
DEBUG=False
|
||||||
|
|
||||||
|
# Comma-separated list of allowed hosts
|
||||||
|
# Example: api.yourdomain.com,localhost
|
||||||
|
ALLOWED_HOSTS=yourdomain.com,localhost
|
||||||
|
|
||||||
|
# Comma-separated list of trusted origins for CSRF (must include https://)
|
||||||
|
# Example: https://api.yourdomain.com,https://yourdomain.com
|
||||||
|
CSRF_TRUSTED_ORIGINS=https://yourdomain.com
|
||||||
|
|
||||||
|
# Domain used in email links
|
||||||
|
SITE_DOMAIN=yourdomain.com
|
||||||
|
|
||||||
|
# ===================================================================
|
||||||
|
# Database Configuration (PostgreSQL)
|
||||||
|
# ===================================================================
|
||||||
|
|
||||||
|
DB_NAME=keepitgoing
|
||||||
|
DB_USER=keepitgoing
|
||||||
|
DB_PASSWORD=CHANGE_ME_STRONG_DATABASE_PASSWORD
|
||||||
|
|
||||||
|
# ===================================================================
|
||||||
|
# Redis Configuration
|
||||||
|
# ===================================================================
|
||||||
|
|
||||||
|
REDIS_URL=redis://redis:6379/0
|
||||||
|
|
||||||
|
# ===================================================================
|
||||||
|
# Email Configuration
|
||||||
|
# ===================================================================
|
||||||
|
# Required for user registration (email verification) and notifications
|
||||||
|
|
||||||
|
EMAIL_BACKEND=django.core.mail.backends.smtp.EmailBackend
|
||||||
|
|
||||||
|
# Gmail Example (use App Password, not regular password):
|
||||||
|
# EMAIL_HOST=smtp.gmail.com
|
||||||
|
# EMAIL_PORT=587
|
||||||
|
# EMAIL_USE_TLS=True
|
||||||
|
# EMAIL_HOST_USER=your-email@gmail.com
|
||||||
|
# EMAIL_HOST_PASSWORD=your-app-password
|
||||||
|
|
||||||
|
# SendGrid Example:
|
||||||
|
# EMAIL_HOST=smtp.sendgrid.net
|
||||||
|
# EMAIL_PORT=587
|
||||||
|
# EMAIL_USE_TLS=True
|
||||||
|
# EMAIL_HOST_USER=apikey
|
||||||
|
# EMAIL_HOST_PASSWORD=your-sendgrid-api-key
|
||||||
|
|
||||||
|
# AWS SES Example:
|
||||||
|
# EMAIL_HOST=email-smtp.us-east-1.amazonaws.com
|
||||||
|
# EMAIL_PORT=587
|
||||||
|
# EMAIL_USE_TLS=True
|
||||||
|
# EMAIL_HOST_USER=your-aws-access-key
|
||||||
|
# EMAIL_HOST_PASSWORD=your-aws-secret-key
|
||||||
|
|
||||||
|
EMAIL_HOST=smtp.gmail.com
|
||||||
|
EMAIL_PORT=587
|
||||||
|
EMAIL_USE_TLS=True
|
||||||
|
EMAIL_HOST_USER=your-email@gmail.com
|
||||||
|
EMAIL_HOST_PASSWORD=your-app-password
|
||||||
|
DEFAULT_FROM_EMAIL=KeepItGoing <noreply@yourdomain.com>
|
||||||
|
SERVER_EMAIL=server@yourdomain.com
|
||||||
|
|
||||||
|
# ===================================================================
|
||||||
|
# Email Verification Settings
|
||||||
|
# ===================================================================
|
||||||
|
|
||||||
|
EMAIL_VERIFICATION_TOKEN_EXPIRY_HOURS=24
|
||||||
|
|
||||||
|
# ===================================================================
|
||||||
|
# CORS Configuration
|
||||||
|
# ===================================================================
|
||||||
|
# Comma-separated list of allowed origins
|
||||||
|
# Example: https://yourdomain.com,https://app.yourdomain.com
|
||||||
|
|
||||||
|
CORS_ALLOWED_ORIGINS=https://yourdomain.com
|
||||||
|
|
||||||
|
# ===================================================================
|
||||||
|
# SaaS Mode
|
||||||
|
# ===================================================================
|
||||||
|
# Set to True for SaaS deployment with billing/usage limits
|
||||||
|
# Set to False for self-hosted deployment (no limits)
|
||||||
|
|
||||||
|
SAAS_MODE=False
|
||||||
|
|
||||||
|
# ===================================================================
|
||||||
|
# Web Server Configuration
|
||||||
|
# ===================================================================
|
||||||
|
|
||||||
|
# Port to expose the web service on (default: 8000)
|
||||||
|
# Change this if port 8000 is already in use
|
||||||
|
WEB_PORT=8000
|
||||||
|
|
||||||
|
# ===================================================================
|
||||||
|
# Gunicorn Configuration
|
||||||
|
# ===================================================================
|
||||||
|
|
||||||
|
GUNICORN_WORKERS=3
|
||||||
|
GUNICORN_TIMEOUT=60
|
||||||
|
|
||||||
|
# ===================================================================
|
||||||
|
# Push Notifications (Optional)
|
||||||
|
# ===================================================================
|
||||||
|
# Leave empty if not using push notifications
|
||||||
|
|
||||||
|
# Firebase Cloud Messaging (FCM)
|
||||||
|
FCM_CREDENTIALS_PATH=
|
||||||
|
|
||||||
|
# Web Push (VAPID keys)
|
||||||
|
VAPID_PUBLIC_KEY=
|
||||||
|
VAPID_PRIVATE_KEY=
|
||||||
|
VAPID_ADMIN_EMAIL=
|
||||||
|
|
||||||
|
# ===================================================================
|
||||||
|
# Additional Settings
|
||||||
|
# ===================================================================
|
||||||
|
|
||||||
|
# Django settings module (usually don't need to change)
|
||||||
|
DJANGO_SETTINGS_MODULE=config.settings.selfhosted
|
||||||
Reference in New Issue
Block a user