83 lines
3.2 KiB
YAML
83 lines
3.2 KiB
YAML
# --------------------------------------------------------------
|
||
# General
|
||
# --------------------------------------------------------------
|
||
matrix_domain: "matrix.fpov.space"
|
||
landing_domain: "org.fpov.space
|
||
teamspeak_domain: "ts.fpov.space" # <-- new
|
||
matrix_email: "boxswappers@gmail.com"
|
||
|
||
# --------------------------------------------------------------
|
||
# Ports
|
||
# --------------------------------------------------------------
|
||
traefik_http_port: 80
|
||
traefik_https_port: 443
|
||
|
||
# --- TURN -------------------------------------------------------
|
||
turn_listen_port: 3478
|
||
turn_tls_port: 5349
|
||
turn_secret: "CHANGE-ME-TO-HEX-STRING"
|
||
|
||
# --- Synapse ----------------------------------------------------
|
||
synapse_http_port: 8008
|
||
synapse_version: "latest"
|
||
|
||
# --- Teamspeak ---------------------------------------------------
|
||
teamspeak_image: "docker.io/teamspeak:latest"
|
||
teamspeak_container_name: teamspeak
|
||
teamspeak_udp_port: 9987 # voice (UDP) – exposed directly on the host
|
||
teamspeak_tcp_port: 10011 # query (TCP) – will be routed via Traefik
|
||
teamspeak_file_port: 30033 # file‑transfer (TCP) – optional, expose directly
|
||
|
||
# --------------------------------------------------------------
|
||
# Container images
|
||
# --------------------------------------------------------------
|
||
traefik_image: "docker.io/traefik:latest"
|
||
turn_image: "docker.io/coturn/coturn:latest"
|
||
synapse_image: "docker.io/matrixdotorg/synapse:{{ synapse_version }}"
|
||
nginx_image: "docker.io/nginx:alpine"
|
||
|
||
# --------------------------------------------------------------
|
||
# Podman names & volumes
|
||
# --------------------------------------------------------------
|
||
podman_network: matrix_net
|
||
vol_traefik: traefik_data
|
||
vol_synapse: synapse_config
|
||
vol_media: synapse_media
|
||
vol_turn: turn_data
|
||
vol_nginx: nginx_html
|
||
vol_teamspeak: teamspeak_data # <-- new volume
|
||
|
||
# --------------------------------------------------------------
|
||
# Paths on the target host (temporary files)
|
||
# --------------------------------------------------------------
|
||
static_traefik_path: "/tmp/traefik_static.toml"
|
||
dynamic_traefik_path: "/tmp/traefik_dynamic.yml"
|
||
turn_conf_path: "/tmp/turnserver.conf"
|
||
synapse_cfg_path: "/tmp/homeserver.yaml"
|
||
nginx_html_path: "/tmp/index.html"
|
||
|
||
|
||
# -----------------------------------------------------------------
|
||
# NEW – Google OAuth2 (OpenID Connect) credentials
|
||
# -----------------------------------------------------------------
|
||
google_oidc_client_id: "YOUR_GOOGLE_CLIENT_ID"
|
||
google_oidc_client_secret: "YOUR_GOOGLE_CLIENT_SECRET"
|
||
|
||
# Optional – the scopes you want to request (the default works for most cases)
|
||
google_oidc_scopes:
|
||
- openid
|
||
- email
|
||
- profile
|
||
|
||
# --------------------------------------------------------------
|
||
# Landing page HTML
|
||
# --------------------------------------------------------------
|
||
matrix_domain: "matrix.example.com"
|
||
landing_title: "Welcome to {{ matrix_domain }}" # you can embed other vars here
|
||
landing_tagline: "Matrix + Traefik + Teamspeak – all in one stack"
|
||
landing_message: |
|
||
This host runs a Matrix homeserver (Synapse), a reverse‑proxy (Traefik) with
|
||
automatic Let’s Encrypt certificates, a TURN server for voice/video, and a
|
||
simple landing page.
|
||
|