blob: 686a431b16900566947b34624efcb848af76c771 [file] [log] [blame]
{
"apps": {
"http": {
"servers": {
"srv0": {
"listen": [":443"],
"routes": [
{
"match": [
{
"host": ["signup.hopescaramels.com"]
}
],
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "reverse_proxy",
"upstreams": [
{
"dial": "192.168.0.4:3035"
}
]
}
]
}
]
}
],
"terminal": true
},
{
"match": [
{
"host": ["homebridge.coded.codes"]
}
],
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "reverse_proxy",
"upstreams": [
{
"dial": "localhost:8581"
}
]
}
]
}
]
}
],
"terminal": true
},
{
"match": [
{
"host": [
"mail.coded.codes",
"mail.clicks.codes",
"mail.hopescaramels.com"
]
}
],
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "reverse_proxy",
"transport": {
"protocol": "http"
},
"upstreams": [
{
"dial": "localhost:1080"
}
]
}
]
}
]
}
],
"terminal": true
},
{
"match": [
{
"host": ["logs.clicks.codes"]
}
],
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "reverse_proxy",
"upstreams": [
{
"dial": "127.0.0.1:9052"
}
]
}
]
}
]
}
],
"terminal": true
},
{
"match": [
{
"host": ["etherpad.clicks.codes"]
}
],
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "reverse_proxy",
"upstreams": [
{
"dial": "127.0.0.1:9001"
}
]
}
]
}
]
}
],
"terminal": true
},
{
"match": [
{
"host": ["www.hopescaramels.com"]
}
],
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "static_response",
"headers": {
"Location": ["https://etsy.com/shop/HopesCaramels"]
},
"status_code": 302
}
]
}
]
}
],
"terminal": true
},
{
"match": [
{
"host": ["jellyfin.coded.codes"]
}
],
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "reverse_proxy",
"upstreams": [
{
"dial": "localhost:8096"
}
]
}
]
}
]
}
],
"terminal": true
},
{
"match": [
{
"host": ["codedpc.coded.codes"]
}
],
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "reverse_proxy",
"upstreams": [
{
"dial": "192.168.0.2:3389"
}
]
}
]
}
]
}
],
"terminal": true
},
{
"match": [
{
"host": ["testing.coded.codes"]
}
],
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "reverse_proxy",
"upstreams": [
{
"dial": "192.168.0.2:3030"
}
]
}
]
}
]
}
],
"terminal": true
},
{
"match": [
{
"host": ["kavita.coded.codes"]
}
],
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "reverse_proxy",
"upstreams": [
{
"dial": "localhost:5000"
}
]
}
]
}
]
}
],
"terminal": true
},
{
"match": [
{
"host": ["hopescaramels.com"]
}
],
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "static_response",
"headers": {
"Location": ["https://etsy.com/shop/HopesCaramels"]
},
"status_code": 302
}
]
}
]
}
],
"terminal": true
},
{
"match": [
{
"host": ["api.clicks.codes"]
}
],
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "rewrite",
"strip_path_prefix": "/nucleus"
}
]
},
{
"handle": [
{
"handler": "reverse_proxy",
"upstreams": [
{
"dial": "127.0.0.1:10000"
}
]
}
]
}
]
}
],
"match": [
{
"path": ["/nucleus/*"]
}
]
},
{
"handle": [
{
"handler": "static_response",
"status_code": 503
}
]
}
]
}
],
"terminal": true
},
{
"match": [
{
"host": ["omv.coded.codes"]
}
],
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "reverse_proxy",
"upstreams": [
{
"dial": "localhost:6773"
}
]
}
]
}
]
}
],
"terminal": true
},
{
"match": [
{
"host": ["api.coded.codes"]
}
],
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "rewrite",
"strip_path_prefix": "/nucleus"
}
]
},
{
"handle": [
{
"handler": "reverse_proxy",
"upstreams": [
{
"dial": "192.168.0.2:10000"
}
]
}
]
}
]
}
],
"match": [
{
"path": ["/nucleus/*"]
}
]
},
{
"handle": [
{
"handler": "static_response",
"status_code": 404
}
]
}
]
}
],
"terminal": true
},
{
"match": [
{
"host": ["www.clicks.codes"]
}
],
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "static_response",
"headers": {
"Location": [
"https://clicks.codes{http.request.uri}"
]
},
"status_code": 302
}
]
}
]
}
],
"terminal": true
},
{
"match": [
{
"host": ["clicks.codes"]
}
],
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "reverse_proxy",
"upstreams": [
{
"dial": "127.0.0.1:3000"
}
]
}
]
}
]
}
],
"terminal": true
},
{
"match": [
{
"host": ["coded.codes"]
}
],
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "static_response",
"headers": {
"Location": [
"https://clicks.codes{http.request.uri}"
]
},
"status_code": 302
}
]
}
]
}
],
"terminal": true
}
]
},
"srv1": {
"listen": [":80"],
"routes": [
{
"match": [
{
"host": [
"mail.clicks.codes",
"mail.coded.codes",
"mail.hopescaramels.com",
"autoconfig.coded.codes",
"autoconfig.clicks.codes",
"autoconfig.hopescaramels.com",
"imap.coded.codes",
"imap.clicks.codes",
"imap.hopescaramels.com",
"pop.coded.codes",
"pop.clicks.codes",
"pop.hopescaramels.com",
"smtp.coded.codes",
"smtp.clicks.codes",
"smtp.hopescaramels.com"
]
}
],
"handle": [
{
"handler": "subroute",
"routes": [
{
"handle": [
{
"handler": "reverse_proxy",
"upstreams": [
{
"dial": "localhost:1080"
}
]
}
]
}
]
}
],
"terminal": true
}
]
}
}
},
"layer4": {
"servers": {
"smtp-25": {
"listen": ["0.0.0.0:25"],
"routes": [
{
"handle": [
{
"handler": "proxy",
"proxy_protocol": "v2",
"upstreams": [{ "dial": ["127.0.0.1:1025"] }]
}
]
}
]
},
"smtp-465": {
"listen": ["0.0.0.0:465"],
"routes": [
{
"handle": [
{
"handler": "proxy",
"proxy_protocol": "v2",
"upstreams": [{ "dial": ["127.0.0.1:1465"] }]
}
]
}
]
},
"smtp-587": {
"listen": ["0.0.0.0:587"],
"routes": [
{
"handle": [
{
"handler": "proxy",
"proxy_protocol": "v2",
"upstreams": [{ "dial": ["127.0.0.1:1587"] }]
}
]
}
]
},
"pop-110": {
"listen": ["0.0.0.0:110"],
"routes": [
{
"handle": [
{
"handler": "proxy",
"proxy_protocol": "v2",
"upstreams": [{ "dial": ["127.0.0.1:1110"] }]
}
]
}
]
},
"pop-995": {
"listen": ["0.0.0.0:995"],
"routes": [
{
"handle": [
{
"handler": "proxy",
"proxy_protocol": "v2",
"upstreams": [{ "dial": ["127.0.0.1:1995"] }]
}
]
}
]
},
"imap-143": {
"listen": ["0.0.0.0:143"],
"routes": [
{
"handle": [
{
"handler": "proxy",
"proxy_protocol": "v2",
"upstreams": [{ "dial": ["127.0.0.1:1143"] }]
}
]
}
]
},
"imap-993": {
"listen": ["0.0.0.0:993"],
"routes": [
{
"handle": [
{
"handler": "proxy",
"proxy_protocol": "v2",
"upstreams": [{ "dial": ["127.0.0.1:1993"] }]
}
]
}
]
}
}
}
}
}