: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} } } }