Expand local_machine docs and automation for connectivity, games, and ops.
Add proxy/VPN/telegram launchd and emergency runbooks; reorganize apps docs; document JA3 CrossOver runbook and Wine troubleshooting; add GOG/HoMM game scripts, disk cleanup guides, and gitea push-via-proxy helper. Ignore temp/. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
27
docs/connectivity/matrix/Caddyfile.example
Normal file
27
docs/connectivity/matrix/Caddyfile.example
Normal file
@@ -0,0 +1,27 @@
|
||||
# Пример для Caddy 2: TLS автоматически (Let's Encrypt).
|
||||
# Замените matrix.example.com и example.com на свои домены.
|
||||
#
|
||||
# Запуск Caddy на том же хосте, что и docker-compose (Synapse на 127.0.0.1:8008/8448).
|
||||
|
||||
matrix.example.com {
|
||||
reverse_proxy /_matrix/* 127.0.0.1:8008
|
||||
reverse_proxy /_synapse/* 127.0.0.1:8008
|
||||
}
|
||||
|
||||
# Федерация Matrix: S2S часто идёт на :8448. Проброс на тот же процесс Synapse.
|
||||
matrix.example.com:8448 {
|
||||
reverse_proxy 127.0.0.1:8448
|
||||
}
|
||||
|
||||
# Клиенты ищут .well-known на apex-домене (если server_name = example.com).
|
||||
example.com {
|
||||
encode gzip
|
||||
handle /.well-known/matrix/server {
|
||||
header Content-Type application/json
|
||||
respond `{"m.server": "matrix.example.com:443"}`
|
||||
}
|
||||
handle /.well-known/matrix/client {
|
||||
header Content-Type application/json
|
||||
respond `{"m.homeserver": {"base_url": "https://matrix.example.com"}}`
|
||||
}
|
||||
}
|
||||
45
docs/connectivity/matrix/docker-compose.yml
Normal file
45
docs/connectivity/matrix/docker-compose.yml
Normal file
@@ -0,0 +1,45 @@
|
||||
# Synapse + PostgreSQL на одном хосте (DigitalOcean и т.п.).
|
||||
# Перед первым запуском: см. MATRIX_SYNAPSE_DO.md — generate и homeserver.yaml.
|
||||
#
|
||||
# Использование на сервере:
|
||||
# export MATRIX_DOMAIN=matrix.example.com # хост, где слушает Synapse за прокси
|
||||
# export SYNAPSE_SERVER_NAME=example.com # публичное имя сервера (часто apex)
|
||||
# docker compose up -d
|
||||
#
|
||||
# Порты 8008/8448 не публикуем наружу, если перед Synapse стоит Caddy/Nginx на 443.
|
||||
|
||||
services:
|
||||
db:
|
||||
image: docker.io/postgres:15-alpine
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
POSTGRES_USER: synapse
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:?set POSTGRES_PASSWORD in .env}
|
||||
POSTGRES_DB: synapse
|
||||
POSTGRES_INITDB_ARGS: --encoding=UTF-8 --lc-collate=C --lc-ctype=C
|
||||
volumes:
|
||||
- synapse-db:/var/lib/postgresql/data
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "pg_isready -U synapse"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
|
||||
synapse:
|
||||
image: docker.io/matrixdotorg/synapse:latest
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
db:
|
||||
condition: service_healthy
|
||||
volumes:
|
||||
- synapse-data:/data
|
||||
environment:
|
||||
SYNAPSE_NO_TLS: "1"
|
||||
ports:
|
||||
- "127.0.0.1:8008:8008"
|
||||
- "127.0.0.1:8448:8448"
|
||||
command: run
|
||||
|
||||
volumes:
|
||||
synapse-data:
|
||||
synapse-db:
|
||||
2
docs/connectivity/matrix/env.example
Normal file
2
docs/connectivity/matrix/env.example
Normal file
@@ -0,0 +1,2 @@
|
||||
# Скопируйте в .env рядом с docker-compose.yml и заполните.
|
||||
POSTGRES_PASSWORD=сгенерируйте_длинный_случайный_пароль
|
||||
Reference in New Issue
Block a user