99e0f72844
- render_template: значения передаются через окружение (envsubst), а не
подставляются в variadic-аргументы — многострочные значения больше не
ломают разбор, неполный список не уводит bash в бесконечный цикл
- export "$pair": bash сам разбирает KEY=value (было export "${pair}")
- шаблоны переведены на ${VAR}-синтаксис, добавлен compose.test.yaml.tpl
для тестового режима установщика (--skip-tls без публикации портов)
- dry-run не требует root и работает вне Linux (проверка ОС пропускается)
- install.sh: учитываются --livekit-*-порты и --turn-*-порты в livekit.yaml,
исправлено экранирование апострофа в итоговой сводке
- scripts/debug-install.sh: трассировка установщика в контейнере
65 lines
1.0 KiB
Smarty
65 lines
1.0 KiB
Smarty
# Сгенерировано deploy/install.sh — не редактируйте вручную.
|
|
# Режим: ${PROXY_MODE} | Домен: ${DOMAIN}
|
|
{
|
|
email ${ACME_EMAIL}
|
|
admin off
|
|
log {
|
|
output file /var/log/caddy/access.log {
|
|
roll_size 10mb
|
|
roll_keep 3
|
|
}
|
|
format json
|
|
}
|
|
}
|
|
|
|
(security_headers) {
|
|
header {
|
|
Strict-Transport-Security "max-age=31536000; includeSubDomains"
|
|
X-Content-Type-Options "nosniff"
|
|
Referrer-Policy "strict-origin-when-cross-origin"
|
|
X-Frame-Options "DENY"
|
|
-Server
|
|
}
|
|
}
|
|
|
|
${DOMAIN} {
|
|
encode zstd gzip
|
|
import security_headers
|
|
|
|
@gateway path /gateway
|
|
handle @gateway {
|
|
reverse_proxy app:8080 {
|
|
transport http {
|
|
read_timeout 1h
|
|
write_timeout 1h
|
|
}
|
|
}
|
|
}
|
|
|
|
@rtc path /rtc*
|
|
handle @rtc {
|
|
reverse_proxy livekit:7880 {
|
|
transport http {
|
|
read_timeout 1h
|
|
write_timeout 1h
|
|
}
|
|
}
|
|
}
|
|
|
|
handle /api/* {
|
|
reverse_proxy app:8080
|
|
}
|
|
|
|
handle {
|
|
reverse_proxy app:8080
|
|
}
|
|
}
|
|
|
|
${FILES_DOMAIN} {
|
|
encode zstd gzip
|
|
import security_headers
|
|
handle {
|
|
reverse_proxy app:8080
|
|
}
|
|
}
|