Сервис frontend: сборка SPA (Vite) и отдача через Caddy, /api → core:5080. В профиль observability добавлены Loki/Promtail/Grafana (в dev их не было). Dev-Caddyfile отдаёт SPA с Cache-Control no-cache, чтобы пересборка подхватывалась обновлением страницы.
20 lines
906 B
Caddyfile
20 lines
906 B
Caddyfile
# Dev-edge «Дейла» (compose.dev.yml, сервис frontend): SPA + /api на core.
|
|
# Отличие от prod-Caddyfile: HTTP без TLS и без плейсхолдер-домена — для локального просмотра UI.
|
|
# Статика — собранный SPA (Vite) в /srv, неизвестные пути отдают index.html (история браузера).
|
|
|
|
:80 {
|
|
# API core: /api/* уходит на core:5080 без перезаписи (контракт /api неизменен).
|
|
# SSE (/api/events), файлы и QR-SVG проходят reverse_proxy потоково.
|
|
handle /api/* {
|
|
reverse_proxy core:5080
|
|
}
|
|
|
|
handle {
|
|
# SPA/ассеты в dev не кэшируем: пересборка фронта должна подхватываться по F5.
|
|
header Cache-Control "no-cache"
|
|
root * /srv
|
|
try_files {path} /index.html
|
|
file_server
|
|
}
|
|
}
|