Skip to main content

Configuration

Configuration — capas de configuración (no secreta) usadas por la plataforma. ↓ Environments · ⬆ Documentación AITHA

This document describes the configuration layers used by the platform.

Configuration Layers

Base topology (non-secret)

Files:

  • deployment/topology.env.template (tracked)
  • deployment/topology.env (generated)

Defines stable host ports and local URLs used by project .env templates and (when applicable) remote deployment.

It also defines shared non-secret topology defaults such as PUBLIC_BASE_DOMAIN.

Global config (non-secret)

File: .env (generated from .env.template)

Global orchestration settings shared by projects (network name, internal service URLs, global defaults).

This is also where shared public service URLs such as CHATWOOT_PUBLIC_URL and ZITADEL_PUBLIC_URL live.

Global secrets

Local dev file: .env.secrets (generated from .env.secrets.example)

Passwords/tokens used across projects for local development.

For remote servers, prefer Ansible Vault (core2_env_secrets) and let remote deploy render the server-side .env.secrets during deployment.

Project templates and generated env

Files:

  • */.env.template or */.env.example (tracked)
  • */.env (generated)

Project .env files are generated by ./infra env generate by merging topology + .env + .env.secrets into each project template.

Remote deployment configuration

File: deployment/remote.env (tracked)

Defines remote-only knobs and the public endpoint registry (REMOTE_ENDPOINT_DOMAIN_*, REMOTE_ENDPOINT_PORT_*, etc.).

Remote endpoint domains should reuse PUBLIC_BASE_DOMAIN from deployment/topology.env or shared public URLs from .env when a service already exposes its canonical public hostname there.

Notes

  • The shared Docker network name is DOCKER_NETWORK_NAME (root .env).
  • Avoid editing generated */.env by hand; change deployment/topology.env, .env, .env.secrets or the relevant */.env.template instead.