Files
lasuite-meet/nginx.conf.tmpl
notplants e4bb97a181 fix: resolver-based nginx config and env vars for template configs
- Use Docker embedded DNS (127.0.0.11) with variables in proxy_pass
  instead of upstream blocks to prevent nginx crash loops when
  backend isn't ready during startup
- Add STACK_NAME env to web and livekit services for golang
  template_driver config resolution
- Add LIVEKIT_API_KEY env to livekit service for config template
- Add livekit_as secret to livekit service
- Increase web healthcheck retries and start_period
- Bump NGINX_CONF_VERSION to v2
2026-02-27 19:30:57 +00:00

51 lines
1.4 KiB
Cheetah

# Use Docker's embedded DNS so nginx starts even if upstreams aren't ready yet.
# With variables in proxy_pass, hostname resolution is deferred to request time
# instead of config parse time — preventing crash loops during slow backend startup.
resolver 127.0.0.11 valid=5s;
server {
listen 8083;
server_name localhost;
charset utf-8;
# Disables server version feedback on pages and in headers
server_tokens off;
set $meet_backend {{ env "STACK_NAME" }}_backend:8000;
set $meet_frontend {{ env "STACK_NAME" }}_app:8080;
location @proxy_to_meet_backend {
proxy_set_header X-Forwarded-Proto https;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect off;
proxy_pass http://$meet_backend;
}
location @proxy_to_meet_frontend {
proxy_set_header X-Forwarded-Proto https;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect off;
proxy_pass http://$meet_frontend;
}
location / {
try_files $uri @proxy_to_meet_frontend;
}
location /api {
try_files $uri @proxy_to_meet_backend;
}
location /admin {
try_files $uri @proxy_to_meet_backend;
}
location /static {
try_files $uri @proxy_to_meet_backend;
}
}