Files
NextChair/.env.infra.example
T
Stefan Lazic a0d39026c0
CI / ci (push) Canceled after 0s
Management UI
Attempt 2 of a management ui.
2026-09-05 13:39:55 +01:00

37 lines
1.9 KiB
Bash

# Shared infrastructure config — see stacks/infra/compose.yaml for the
# full setup sequence. Copy this to `stacks/infra/.env` (kept out of git
# — see .gitignore) and fill in real values.
#
# docker network create next-chair-edge
# docker compose -f stacks/infra/compose.yaml --env-file stacks/infra/.env up -d
# ── MySQL (shared server — one database per business, created manually
# per business, see stacks/infra/compose.yaml's own header) ────────────
MYSQL_ROOT_PASSWORD="replace-me"
# Host-machine port MySQL is reachable on, e.g. for a GUI client over an
# SSH tunnel — every business's app container always reaches it via the
# shared Docker network and the service name `next-chair-mysql`, never
# this.
MYSQL_HOST_PORT=3306
# ── Caddy (reverse proxy + automatic TLS via Let's Encrypt) ────────────
# Let's Encrypt sends renewal/expiry notices here — use a real address
# you actually check, not a placeholder.
ACME_EMAIL="you@example.com"
# Leave these at 80/443 on a real deployment — only override for local
# testing on a machine already using those ports for something else.
CADDY_HTTP_PORT=80
CADDY_HTTPS_PORT=443
# ── Dockge (stack management UI — http://<vps>:5001) ───────────────────
# This repo's absolute path on the VPS, e.g. "/opt/nextchair/stacks" — NOT
# a relative path. Dockge (and the management UI in manager/) shell
# `docker compose` out to the HOST's dockerd via the mounted Docker
# socket, so a compose-file path only resolves to the same file on both
# sides if the bind-mount doesn't change it — meaning this must be
# mounted at the identical path inside the container too (see
# stacks/infra/compose.yaml's dockge service). Get this wrong and Dockge
# will either fail to find your stacks or manage the wrong path entirely.
STACKS_DIR="/opt/nextchair/stacks"
DOCKGE_HOST_PORT=5001