34 lines
1.0 KiB
Caddyfile

:8080 {
# Serve pre-compressed static assets and enable on-the-fly compression for other assets.
encode gzip
# Define routes for static assets.
# Caddy will automatically look for pre-gzipped files (.gz) if available.
route /static/appbuilder* {
uri strip_prefix /static/appbuilder
root * /usr/share/caddy/static/appbuilder
file_server {
precompressed gzip
}
}
route /static/dist* {
uri strip_prefix /static/dist
root * /usr/share/caddy/static/dist
file_server {
precompressed gzip
}
}
# Reverse proxy all other requests to the Airflow webserver.
route {
reverse_proxy airflow-webserver:8080 {
# Set headers to ensure correct proxy behavior
header_up Host {http.request.host}
header_up X-Real-IP {http.request.remote.ip}
header_up X-Forwarded-For {http.request.remote.ip}
header_up X-Forwarded-Proto {http.request.scheme}
}
}
}