stacks/homelab/Caddyfile

146 lines
2.4 KiB
Caddyfile
Raw Normal View History

2022-09-04 08:37:29 -06:00
{
2023-01-28 16:34:47 -07:00
email neale@woozle.org
2023-02-06 12:14:14 -07:00
#debug
}
(authelia) {
uri /api/verify?rd=https://auth.woozle.org/
copy_headers Remote-User Remote-Groups Remote-Name Remote-Email
2022-09-04 08:37:29 -06:00
}
(restricted-access) {
2023-02-06 12:14:14 -07:00
@noauth header !Authorization
handle @noauth {
forward_auth authelia:9091 {
import authelia
}
2022-09-04 08:37:29 -06:00
}
2023-02-06 12:14:14 -07:00
handle {
forward_auth authelia:9091 {
import authelia
header_up Proxy-Authorization {header.authorization}
}
}
}
auth.woozle.org {
reverse_proxy authelia:9091
2022-09-04 08:37:29 -06:00
}
2022-11-12 17:08:10 -07:00
git.woozle.org {
2023-01-07 15:30:03 -07:00
reverse_proxy forgejo:3000
2022-09-04 08:37:29 -06:00
}
2022-11-12 17:08:10 -07:00
drive.woozle.org {
2022-09-04 08:37:29 -06:00
import restricted-access
# XXX: browsing says method not allowed
2022-09-11 15:42:18 -06:00
@nondav {
method HEAD GET
2022-09-04 08:37:29 -06:00
}
# route overrides built-in ordering
route {
2022-09-11 15:42:18 -06:00
file_server @nondav {
2022-10-30 18:20:32 -06:00
root /srv/
2022-12-16 15:02:50 -07:00
browse /browser.html
2022-09-04 08:37:29 -06:00
}
reverse_proxy webdav:8000
}
}
2023-01-28 16:34:47 -07:00
media.woozle.org {
reverse_proxy jellyfin:8096
}
2022-09-04 08:37:29 -06:00
# XXX: have this use caddy auth
2022-11-12 17:08:10 -07:00
ancestry.woozle.org {
2022-09-04 08:37:29 -06:00
reverse_proxy geneweb:2317
}
2022-10-12 17:45:23 -06:00
##
## handle sends original path
## handle_path truncates path
##
(deergrove) {
handle_path /ddns/* {
import restricted-access
reverse_proxy ddns:8000
}
2022-11-22 20:15:37 -07:00
handle /transmission/* {
import restricted-access
reverse_proxy host.docker.internal:9091
}
2022-10-12 17:45:23 -06:00
handle /nzbget/* {
import restricted-access
reverse_proxy nzbget:6789
}
handle /sonarr/* {
import restricted-access
reverse_proxy sonarr:8989
}
2022-10-12 22:05:20 -06:00
handle /radarr/* {
import restricted-access
reverse_proxy radarr:7878
}
handle /readarr/* {
import restricted-access
reverse_proxy readarr:8787
}
2022-10-13 14:38:46 -06:00
handle /lidarr/* {
import restricted-access
reverse_proxy lidarr:8686
}
2022-10-13 10:22:51 -06:00
handle /prowlarr/* {
2022-10-12 17:45:23 -06:00
import restricted-access
2022-10-13 10:22:51 -06:00
reverse_proxy prowlarr:9696
2022-10-12 17:45:23 -06:00
}
2022-09-04 08:37:29 -06:00
handle_path /sucker/* {
import restricted-access
2023-01-28 16:34:47 -07:00
reverse_proxy sucker:8080
2022-09-04 08:37:29 -06:00
}
2022-09-25 17:54:54 -06:00
2022-09-07 16:53:39 -06:00
handle_path /octoprint/* {
import restricted-access
reverse_proxy {
to 192.168.86.20:80
2022-09-07 16:53:39 -06:00
header_up X-Script-Name "/octoprint"
}
}
2022-09-25 17:54:54 -06:00
2022-09-10 17:32:15 -06:00
handle /webcam/* {
# Octoprint doesn't properly prefix webcam URLs
import restricted-access
reverse_proxy {
2022-12-14 19:33:33 -07:00
to 192.168.86.20:80
2022-09-10 17:32:15 -06:00
}
}
2022-09-25 17:54:54 -06:00
handle_path /public/* {
file_server {
2022-10-30 18:20:32 -06:00
root /srv/storage/public
2022-09-25 17:54:54 -06:00
}
}
2022-09-04 17:12:30 -06:00
handle {
import restricted-access
file_server {
root /www
}
2022-09-04 08:37:29 -06:00
}
}
deergrove.woozle.org {
import deergrove
}
sweetums.lan {
tls internal
import deergrove
}