37 lines
1.9 KiB
Bash
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
|