mirror of
https://gitverse.ru/kpa39l/icq.git
synced 2026-09-29 09:55:11 +00:00
62 lines
2.5 KiB
YAML
62 lines
2.5 KiB
YAML
version: "3.9"
|
||
|
||
services:
|
||
prosody:
|
||
image: prosody/prosody:latest
|
||
container_name: icq-prosody
|
||
restart: unless-stopped
|
||
hostname: chat.nixg.ru
|
||
volumes:
|
||
- ./data:/var/lib/prosody
|
||
- ./config:/etc/prosody
|
||
- ./certs:/etc/prosody/certs
|
||
- ./modules:/etc/prosody/modules # для кастомных модулей (http_upload и т.п.)
|
||
- ./logs:/var/log/prosody
|
||
ports:
|
||
- "5222:5222" # c2s (клиенты)
|
||
- "5269:5269" # s2s (федерация)
|
||
- "5280:5280" # BOSH / websocket
|
||
- "5281:5281" # websocket TLS (если нужен)
|
||
environment:
|
||
- LOCAL=nixg.ru
|
||
- DOMAIN=nixg.ru
|
||
- "XMPP_DOMAIN=nixg.ru"
|
||
# Для проброса трафика извне через WireGuard на 5222/5269 нужно,
|
||
# чтобы контейнер слушал на хосте. Пока оставляем привязку на все интерфейсы.
|
||
# Caddy (websocket) идёт на 5280/5281.
|
||
# Примечание: для федерации также открыть 5269 на VPS02 (форвард на bigbox).
|
||
|
||
webchat:
|
||
image: nginx:alpine
|
||
container_name: icq-webchat
|
||
restart: unless-stopped
|
||
volumes:
|
||
- ./webchat/nginx.conf:/etc/nginx/conf.d/default.conf:ro
|
||
- ./webchat:/usr/share/nginx/html:ro
|
||
ports:
|
||
- "8081:8081" # веб-клиент (Caddy на vps02 проксирует на 10.8.0.2:8081)
|
||
depends_on:
|
||
- prosody
|
||
|
||
# Мост XMPP -> Telegram (Slidge/slidgram), external component (XEP-0114)
|
||
# Трафик Telegram идёт через SOCKS5-прокси на хосте (172.27.0.1:1080 = SSH-туннель VPS01)
|
||
slidgram:
|
||
image: slidgram-proxy:latest
|
||
container_name: icq-slidgram
|
||
restart: unless-stopped
|
||
volumes:
|
||
- ./slidgram/data:/var/lib/slidge
|
||
environment:
|
||
- SLIDGE_JID=telegram.nixg.ru
|
||
- SLIDGE_SECRET=83276db6e870f540163f271d9bd7d3a390530b9ad7b45f58
|
||
- SLIDGE_SERVER=icq-prosody
|
||
- SLIDGE_PORT=5347
|
||
- SLIDGE_HOME_DIR=/var/lib/slidge
|
||
- SLIDGE_ADMINS=admin@nixg.ru
|
||
- SLIDGRAM_PROXY=socks5://172.27.0.1:1080
|
||
# Telegram App (api_id/api_hash с my.telegram.org/apps, получены 2026-08-29)
|
||
# NB: префикс env для плагина = SLIDGE_ + _SLIDGRAM_ → С ДВОЙНЫМ подчёркиванием (SLIDGE__SLIDGRAM_)
|
||
- SLIDGE__SLIDGRAM_API_ID=24276216
|
||
- SLIDGE__SLIDGRAM_API_HASH=2d6d0bb78f433bc5a086735c63e3958f
|
||
depends_on:
|
||
- prosody |