Repository navigation
Installation
wget -qO /tmp/twpr.sh \
https://raw.githubusercontent.com/RasmusVraa/TgWebProxyR/main/install.sh \
&& sudo bash /tmp/twpr.shНе используйте curl … | bash — мастеру нужен TTY.
- Режим: Docker быстро / Docker расширенно / Native быстро / Native расширенно
- Домен (DNS A на VPS, без CDN на первом ACME)
- Email для Let's Encrypt
- Secret — генерируется сам (в advanced можно задать свой)
Профиль default сразу попадает в /etc/tgwebproxyr/profiles.json и в ссылку tgwebproxyr link.
| Флаг | Значение |
|---|---|
--docker |
Compose + образы GHCR |
--native |
systemd + upstream install |
--quick |
минимум вопросов |
--advanced |
порты / workers / secret |
--hostname |
домен |
--email |
ACME email |
--yes |
без подтверждений |
Переменные: TWPR_HOSTNAME, TWPR_EMAIL, TWPR_SECRET, TWPR_YES=1.
# Docker без вопросов
sudo TWPR_HOSTNAME=proxy.example.com \
TWPR_EMAIL=you@example.com \
TWPR_YES=1 bash /tmp/twpr.sh --docker --quick
# Native расширенно
sudo bash /tmp/twpr.sh --native --advanced
# Уже установлено — снова мастер
sudo tgwebproxyr setup --docker --quicksudo tgwebproxyr # меню
sudo tgwebproxyr link # ссылки default
sudo tgwebproxyr status
sudo tgwebproxyr health # healthz / readyz / HTTPSДля non-root: алиас в /etc/profile.d/tgwebproxyr.sh
(tgwebproxyr → sudo tgwebproxyr). Применить: source /etc/profile.d/tgwebproxyr.sh.
# с v1.6.9 — обновляет и скрипт, и стек:
sudo tgwebproxyr update
# если на сервере ещё старый update (≤1.6.8):
wget -qO /tmp/twpr.sh \
https://raw.githubusercontent.com/RasmusVraa/TgWebProxyR/main/install.sh \
&& sudo bash /tmp/twpr.sh --update-onlyПосле обновления до 1.6.12 (Docker): sudo tgwebproxyr secret apply — подтянуть новый relay и mtproxy (--nat-info, трафик по пользователям).
Актуальный релиз: v1.6.14.
При первой установке копируется случайный шаблон из 10 вариантов (site/templates/).
Уже существующий /srv/tproxy-site не перезаписывается.
sudo tgwebproxyr site list
sudo tgwebproxyr site set northwind # или alpine, metro, …
sudo tgwebproxyr site random
# или до установки:
TWPR_SITE_TEMPLATE=foundry sudo bash /tmp/twpr.sh --docker --quick- Ubuntu 22.04+ / Debian 12+, x86_64
- Публичный IPv4, DNS A, порты 80 и 443
- Root
- Для Docker-режима: Docker Engine + Compose plugin
При setup, если найден fullchain+privkey для домена, мастер спросит:
«Подхватить его (не выпускать новый ACME)» — по умолчанию да.
Ищет:
| Путь |
|---|
/etc/letsencrypt/live/<hostname>/fullchain.pem + privkey.pem
|
/etc/ssl/tgwebproxyr/<hostname>/… |
/etc/tgwebproxyr/certs/fullchain.pem + privkey.pem
|
env TWPR_TLS_CERT + TWPR_TLS_KEY
|
sudo tgwebproxyr certs status
sudo tgwebproxyr certs detectРежим пишется в settings.env (TWPR_TLS_MODE=file|acme).
/etc/letsencrypt uninstall не трогает. Caddy-хранилище можно сохранить при удалении.
См. также: Docker-vs-Native, Troubleshooting.