Files
Synapsis/docker/.env.example
T
cyph3rasi ae2c34df6c Add installer, CI, ARM build and test updates
Introduce a one‑line Docker installer and environment examples, add CI and docker validation workflows, and update docs and tests.

Key changes:
- Add docker/install.sh installer that bootstraps /opt/synapsis, downloads compose files, optionally installs Docker, and generates secrets.
- Add top-level .env.example and docker/.env.example entries for shared storage and local development.
- Add GitHub Actions CI (ci.yml) with type checks, targeted vitest runs, build and docker-compose validation.
- Update existing docker workflow to set up QEMU and build multi‑arch images (amd64, arm64).
- Update README and docker/README to use the installer, point to the new repo, adjust local setup instructions, and note shared S3 env vars.
- Update docker-compose comments and include shared S3 env variables and defaults.
- Update .gitignore to ignore site-work mirrors.
- Tests: expand supported bot source types (add brave_news, youtube), increase POST_MAX_LENGTH from 400 to 600, add minimal user handle in mention handler tests, and add mocks & test adjustments in scheduler tests to keep them unit-scoped.

These changes simplify installation, add CI coverage (including Docker config validation), enable multi‑arch builds, and align tests with expanded bot source/validation behavior.
2026-03-07 16:11:37 -08:00

59 lines
1.8 KiB
Bash

# ===========================================
# Synapsis Environment Configuration
# ===========================================
# Copy this file to .env and configure your values
# ===========================================
# REQUIRED: Core Settings
# ===========================================
# Your domain name (no scheme, no path). Example: synapsis.example.com
DOMAIN=your-domain.com
# Optional: Override node domain (host only, defaults to DOMAIN)
# NEXT_PUBLIC_NODE_DOMAIN=your-domain.com
# Optional: Public app URL for background jobs (auto-derived from node domain if unset)
# NEXT_PUBLIC_APP_URL=https://your-domain.com
# Admin email addresses (comma-separated for multiple)
ADMIN_EMAILS=admin@your-domain.com
# Authentication secret - generate with: openssl rand -hex 32
AUTH_SECRET=your-secret-key-here-minimum-32-characters
# ===========================================
# REQUIRED: Database
# ===========================================
DB_USER=synapsis
DB_PASSWORD=your-secure-password-here
DB_NAME=synapsis
# ===========================================
# OPTIONAL: General Settings
# ===========================================
# Application port - 'auto' scans 3000-3020 for first available (recommended)
# Or set a specific port: PORT=3000
PORT=auto
# Allow localhost domains in production (set only for local testing)
# ALLOW_LOCALHOST=1
# Maximum AI bots per user (default: 5)
# BOT_MAX_PER_USER=5
# ===========================================
# OPTIONAL: Shared S3 Storage
# ===========================================
# These are only needed if you want app-level shared storage defaults.
# Most media storage is configured per user inside the app.
# STORAGE_ENDPOINT=
# STORAGE_REGION=us-east-1
# STORAGE_BUCKET=
# STORAGE_ACCESS_KEY=
# STORAGE_SECRET_KEY=
# STORAGE_PUBLIC_BASE_URL=