{ "TCP": { <% if mode == "prod" %> "443": { "HTTPS": true } <% elif mode == "dev" or tailscale.scheme == "http" %> "80": { "HTTPS": false } <% endif %> }, "Web": { <% if mode == "prod" %> "${TS_CERT_DOMAIN}:443": { "Handlers": { "/": { "Proxy": "http://localhost:8080" } } }, "aria.${TS_CERT_DOMAIN}:443": { "Handlers": { "/": { "Proxy": "http://localhost:6880" } } }, "slsk.${TS_CERT_DOMAIN}:443": { "Handlers": { "/": { "Proxy": "http://localhost:5030" } } }, "grocy.${TS_CERT_DOMAIN}:443": { "Handlers": { "/": { "Proxy": "http://localhost:80" } } }, "budget.${TS_CERT_DOMAIN}:443": { "Handlers": { "/": { "Proxy": "http://localhost:5006" } } }, "reader.${TS_CERT_DOMAIN}:443": { "Handlers": { "/": { "Proxy": "http://localhost:9999" } } }, "stash.${TS_CERT_DOMAIN}:443": { "Handlers": { "/": { "Proxy": "http://localhost:5000" } } } <% elif mode == "dev" or tailscale.scheme == "http" %> "${TS_CERT_DOMAIN}:80": { "Handlers": { "/": { "Proxy": "http://localhost:8080" } } }, "aria.${TS_CERT_DOMAIN}:80": { "Handlers": { "/": { "Proxy": "http://localhost:6880" } } }, "slsk.${TS_CERT_DOMAIN}:80": { "Handlers": { "/": { "Proxy": "http://localhost:5030" } } }, "grocy.${TS_CERT_DOMAIN}:80": { "Handlers": { "/": { "Proxy": "http://localhost:80" } } }, "budget.${TS_CERT_DOMAIN}:80": { "Handlers": { "/": { "Proxy": "http://localhost:5006" } } }, "reader.${TS_CERT_DOMAIN}:80": { "Handlers": { "/": { "Proxy": "http://localhost:9999" } } }, "stash.${TS_CERT_DOMAIN}:80": { "Handlers": { "/": { "Proxy": "http://localhost:5000" } } } <% endif %> }, "AllowFunnel": { <% if mode == "prod" %> "${TS_CERT_DOMAIN}:443": false <% elif mode == "dev" or tailscale.scheme == "http" %> "${TS_CERT_DOMAIN}:80": false <% endif %> } }