`FlowStore._git` now passes `-c gc.auto=0`, so `git commit` no longer forks a background `gc --auto` that reparents onto PID 1 and stays there unreaped. With auto-gc off nothing packs on its own, so `_commit` runs a foreground `git gc` every 500 commits — the trigger a long-lived seeding session actually reaches. `docker/compose.yml` takes the frontend's `VITE_API_URL` build arg from the environment, keeping `https://api.${DOMAIN}` only as the fallback. `setup.sh` already derives the scheme from `ENVIRONMENT`, so an `up --build` that does not layer `compose.local.yml` stops shipping a bundle that calls `https://api.localhost`. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01StpRc2C6au1WJ1EUU7fsfu
68 lines
2.2 KiB
Bash
68 lines
2.2 KiB
Bash
# Template for the app stack's .env. The workspace root's scripts/setup.sh copies
|
|
# this file to .env on first run and then keeps the shared keys in sync with the
|
|
# root .env. Secrets stay as `changethis` here and are generated locally.
|
|
|
|
# Domain Traefik routes on and acquires TLS certificates for.
|
|
DOMAIN=localhost
|
|
|
|
# Used by the backend to build links in outgoing emails.
|
|
FRONTEND_HOST=http://localhost:5173
|
|
|
|
# local, staging, production
|
|
ENVIRONMENT=local
|
|
|
|
# Baked into the SPA at build time: the address the interface calls. The
|
|
# workspace root's scripts/setup.sh derives it from DOMAIN and ENVIRONMENT —
|
|
# plain http for a local target, where nothing terminates TLS.
|
|
VITE_API_URL=http://api.localhost
|
|
|
|
PROJECT_NAME="Fluksio"
|
|
STACK_NAME=fluksio-app
|
|
|
|
# Backend
|
|
# `http://frontend` is the compose-network origin the Playwright job loads the
|
|
# SPA from (docker/compose.ci.yml); without it every spec fails CORS at login.
|
|
BACKEND_CORS_ORIGINS="http://localhost,http://localhost:5173,http://app.localhost,https://localhost,https://localhost:5173,http://frontend"
|
|
SECRET_KEY=changethis
|
|
FIRST_SUPERUSER=admin@fluksio.com
|
|
FIRST_SUPERUSER_PASSWORD=changethis
|
|
|
|
# Emails
|
|
SMTP_HOST=
|
|
SMTP_USER=
|
|
SMTP_PASSWORD=
|
|
EMAILS_FROM_EMAIL=info@fluksio.com
|
|
SMTP_TLS=True
|
|
SMTP_SSL=False
|
|
SMTP_PORT=587
|
|
|
|
# Where this installation keeps everything: the database, flows, secrets,
|
|
# artifacts and the user venv. The compose stack sets it to the /data volume.
|
|
DATA_DIR=flow-data
|
|
# Any SQLAlchemy URL. Empty means SQLite in the data directory, which is what
|
|
# the engine is designed around — one process owns this database.
|
|
DATABASE_URL=
|
|
|
|
# The Postgres the optional Umami analytics profile runs on. Nothing else uses
|
|
# it; `make umami` provisions a least-privilege role inside it.
|
|
POSTGRES_DB=app
|
|
POSTGRES_USER=postgres
|
|
POSTGRES_PASSWORD=changethis
|
|
|
|
# Redis — flow engine state. Empty keeps the state in memory; the compose stack
|
|
# points the backend at its own `redis` service.
|
|
REDIS_HOST=
|
|
REDIS_PORT=6379
|
|
|
|
SENTRY_DSN=
|
|
|
|
# Docker registry images
|
|
DOCKER_IMAGE_BACKEND=fluksio-backend
|
|
DOCKER_IMAGE_FRONTEND=fluksio-frontend
|
|
|
|
# The MCP endpoint agents connect to, and the OAuth server behind it.
|
|
MCP_ENABLED=true
|
|
|
|
# Local time for schedules; set from the root .env by scripts/setup.sh.
|
|
TZ=UTC
|