120 lines
4.6 KiB
YAML
120 lines
4.6 KiB
YAML
# --------------------------------------------------------------
|
||
# General
|
||
# --------------------------------------------------------------
|
||
top_domain: fpov.space
|
||
public_ipv4: "15.204.117.53"
|
||
matrix_domain1: "matrix.fpov.space"
|
||
site_domain: "org.fpov.space"
|
||
teamspeak_domain: "ts.fpov.space"
|
||
turn_domain: "turn.fpov.space"
|
||
matrix_email: "boxswappers@gmail.com"
|
||
admin_domain: "mtxadm.fpov.space"
|
||
element_domain: "element.fpov.space"
|
||
|
||
# --------------------------------------------------------------
|
||
# Ports
|
||
# --------------------------------------------------------------
|
||
traefik_http_port: 80
|
||
traefik_https_port: 443
|
||
|
||
# --- TURN -------------------------------------------------------
|
||
turn_listen_port: 3478
|
||
turn_tls_port: 5349
|
||
turn_secret: "7A9F2C4E1B8D6035A2F7E9C1B4D68053"
|
||
turn_static_secret: "fordeathyoudietoday"
|
||
|
||
# --- Synapse ----------------------------------------------------
|
||
synapse_http_port: 8008
|
||
synapse_api_port: 8448
|
||
|
||
# --- Matrix ------------------------------------------------------
|
||
registration_shared_secret: "1KFs@=d&l6BGPD0GAwa55ePu+bF7Vgtk@~x#l3tQyKl#_q0etp"
|
||
macaroon_secret_key: "5GongrU~_kQ9L1-f.nU21sdiz~e63+Wwq;iS7XdPA2giDqZ#xH"
|
||
form_secret: "Ubwo=AThaygGi0iySK*H4i9xUOORCQM#eDMd@E,DqW3DcfqYJG"
|
||
matrix_container_name: "synapse"
|
||
|
||
# --- Teamspeak ---------------------------------------------------
|
||
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
|
||
|
||
#----Postgres-----------------------------------------------------
|
||
postgres_db: synapse
|
||
postgres_user: mMwHLfdO6tz5N
|
||
postgres_pw: 9mKeSFE7tH2eY
|
||
|
||
# --------------------------------------------------------------
|
||
# Container images
|
||
# --------------------------------------------------------------
|
||
db_image: "docker.io/postgres:16-alpine"
|
||
traefik_image: "docker.io/traefik:latest"
|
||
turn_image: "docker.io/coturn/coturn:latest"
|
||
synapse_image: "docker.io/matrixdotorg/synapse:latest"
|
||
nginx_image: "docker.io/nginx:latest"
|
||
npm_image: "docker.io/jc21/nginx-proxy-manager:latest"
|
||
teamspeak_image: "docker.io/teamspeak:latest"
|
||
synapse_admin_image: "docker.io/awesometechnologies/synapse-admin:latest"
|
||
element_image: "docker.io/vectorim/element-web:latest"
|
||
keycloak_image: "quay.io/keycloak/keycloak:26.5.6"
|
||
|
||
# --------------------------------------------------------------
|
||
# 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
|
||
npm_data: npm_data
|
||
npm_letsencrypt: letsencrypt
|
||
vol_db: postgres_db
|
||
|
||
# --------------------------------------------------------------
|
||
# 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"
|
||
synapse_secret_key_path: "/tmp/matrix.fpov.space.signing.key"
|
||
synapse_log_config: "/tmp/matrix.fpov.space.log.config"
|
||
element_config_path: "/tmp/config.json"
|
||
|
||
# -----------------------------------------------------------------
|
||
# Synapse Admin
|
||
#------------------------------------------------------------------
|
||
admin_container_name: mtxadm
|
||
|
||
#------------------------------------------------------------------
|
||
# Element App
|
||
#------------------------------------------------------------------
|
||
element_brand: "FPoV Chat"
|
||
element_container_name: "element"
|
||
# -----------------------------------------------------------------
|
||
# 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.
|
||
|