2022-12-10 18:16:50 +01:00
|
|
|
(logging) {
|
2022-06-19 23:46:55 +02:00
|
|
|
log {
|
|
|
|
output stdout
|
2022-12-10 18:16:50 +01:00
|
|
|
format transform "{common_log}"
|
2022-06-19 23:46:55 +02:00
|
|
|
}
|
2022-06-19 13:35:26 +02:00
|
|
|
}
|
2022-06-19 13:18:17 +02:00
|
|
|
|
2022-12-10 18:16:50 +01:00
|
|
|
{
|
|
|
|
local_certs
|
|
|
|
# email {$TLS_EMAIL}
|
|
|
|
# acme_ca {$CA_URL}
|
|
|
|
import logging
|
|
|
|
}
|
|
|
|
|
2022-06-19 13:35:26 +02:00
|
|
|
(errorpages) {
|
2022-06-19 23:46:55 +02:00
|
|
|
handle_errors {
|
|
|
|
rewrite * /{http.error.status_code}.html
|
2022-12-03 21:06:19 +01:00
|
|
|
file_server {
|
|
|
|
root /srv/errorpages
|
|
|
|
}
|
2022-06-19 23:46:55 +02:00
|
|
|
}
|
2022-06-07 22:54:30 +02:00
|
|
|
}
|
|
|
|
|
2022-12-03 21:06:19 +01:00
|
|
|
(maintenance) {
|
|
|
|
@denied not remote_ip forwarded {$CADDY_BYPASS_IP}
|
|
|
|
handle @denied {
|
|
|
|
rewrite * /maintenance.html
|
|
|
|
file_server {
|
|
|
|
root /srv/errorpages
|
|
|
|
status 503
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2019-11-10 15:22:28 +01:00
|
|
|
|
2022-12-03 21:06:19 +01:00
|
|
|
https://{$BASE_DOMAIN} {
|
2022-06-19 23:46:55 +02:00
|
|
|
import errorpages
|
2022-12-10 18:16:50 +01:00
|
|
|
import logging
|
2022-06-19 23:46:55 +02:00
|
|
|
reverse_proxy /_matrix* matrix:8008
|
2019-12-04 22:00:55 +01:00
|
|
|
|
2022-06-19 23:46:55 +02:00
|
|
|
root * /srv/homepage
|
|
|
|
file_server
|
2019-11-10 23:46:12 +01:00
|
|
|
}
|
|
|
|
|
2020-03-01 00:02:11 +01:00
|
|
|
# https://{$BASE_DOMAIN}:8448 {
|
2022-06-19 23:46:55 +02:00
|
|
|
# import errorpages
|
2022-12-10 18:16:50 +01:00
|
|
|
# import logging
|
2022-06-19 23:46:55 +02:00
|
|
|
# reverse_proxy matrix:8008
|
2020-03-01 00:02:11 +01:00
|
|
|
# }
|
2019-10-27 16:35:12 +01:00
|
|
|
|
2022-12-10 18:16:50 +01:00
|
|
|
# needs to be http!
|
|
|
|
http://autoconfig.{$BASE_DOMAIN} {
|
|
|
|
file_server {
|
|
|
|
root /srv/autoconfig
|
|
|
|
}
|
|
|
|
}
|
2022-12-03 21:06:19 +01:00
|
|
|
|
2019-11-06 21:18:36 +01:00
|
|
|
https://echo.{$BASE_DOMAIN} {
|
2022-06-19 23:46:55 +02:00
|
|
|
import errorpages
|
2022-12-10 18:16:50 +01:00
|
|
|
import logging
|
2022-06-19 23:46:55 +02:00
|
|
|
reverse_proxy echo:8000
|
2019-10-27 16:35:12 +01:00
|
|
|
}
|
|
|
|
|
2022-12-10 18:16:50 +01:00
|
|
|
https://mail.{$BASE_DOMAIN} {
|
|
|
|
import errorpages
|
|
|
|
import logging
|
2022-12-11 00:10:46 +01:00
|
|
|
reverse_proxy roundcube:80
|
2022-12-10 18:16:50 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
https://git.{$BASE_DOMAIN} {
|
|
|
|
import errorpages
|
|
|
|
import logging
|
|
|
|
reverse_proxy gitea:3000
|
|
|
|
}
|
|
|
|
|
|
|
|
https://cloud.{$BASE_DOMAIN} {
|
|
|
|
import errorpages
|
|
|
|
import logging
|
|
|
|
redir /.well-known/carddav /remote.php/dav
|
|
|
|
redir /.well-known/caldav /remote.php/dav
|
|
|
|
redir /.well-known/webfinger /public.php?service=webfinger
|
|
|
|
reverse_proxy nextcloud:80
|
|
|
|
}
|
|
|
|
|
2022-12-03 21:06:19 +01:00
|
|
|
# https://ci-demo.{$BASE_DOMAIN} {
|
|
|
|
# import errorpages
|
2022-12-10 18:16:50 +01:00
|
|
|
# import logging
|
2022-12-03 21:06:19 +01:00
|
|
|
# reverse_proxy docker-ci-demo:8000
|
|
|
|
# }
|
2019-12-04 22:00:55 +01:00
|
|
|
|
2020-03-01 00:02:11 +01:00
|
|
|
# https://stuff.{$BASE_DOMAIN} {
|
2022-06-19 23:46:55 +02:00
|
|
|
# import errorpages
|
2022-12-10 18:16:50 +01:00
|
|
|
# import logging
|
2022-06-19 23:46:55 +02:00
|
|
|
# root * /srv/stuff
|
|
|
|
# file_server browse
|
|
|
|
# basicauth /dev {
|
|
|
|
# dev {$DEV_PASS}
|
|
|
|
# }
|
2020-03-01 00:02:11 +01:00
|
|
|
# }
|
2019-11-06 22:31:16 +01:00
|
|
|
|
2022-12-03 21:06:19 +01:00
|
|
|
# https://bitwarden.{$BASE_DOMAIN} {
|
|
|
|
# import errorpages
|
2022-12-10 18:16:50 +01:00
|
|
|
# import logging
|
2022-12-03 21:06:19 +01:00
|
|
|
# reverse_proxy /notifications/hub/negotiate* bitwarden:80
|
|
|
|
# reverse_proxy /notifications/hub* bitwarden:3012
|
|
|
|
# reverse_proxy bitwarden:80
|
|
|
|
# }
|
2019-10-27 20:03:24 +01:00
|
|
|
|
2022-12-03 21:06:19 +01:00
|
|
|
# https://ci.{$BASE_DOMAIN} {
|
|
|
|
# import errorpages
|
2022-12-10 18:16:50 +01:00
|
|
|
# import logging
|
2022-12-03 21:06:19 +01:00
|
|
|
# reverse_proxy drone:80
|
|
|
|
# }
|
2020-03-01 00:02:11 +01:00
|
|
|
|
2022-12-03 21:06:19 +01:00
|
|
|
# https://hackmd-next.{$BASE_DOMAIN} {
|
|
|
|
# import errorpages
|
2022-12-10 18:16:50 +01:00
|
|
|
# import logging
|
2022-12-03 21:06:19 +01:00
|
|
|
# reverse_proxy codimd:3000
|
|
|
|
# }
|
2022-06-06 17:13:46 +02:00
|
|
|
|
2022-12-03 21:06:19 +01:00
|
|
|
# https://md.{$BASE_DOMAIN} {
|
|
|
|
# import errorpages
|
2022-12-10 18:16:50 +01:00
|
|
|
# import logging
|
2022-12-03 21:06:19 +01:00
|
|
|
# reverse_proxy non-existent:3000
|
|
|
|
# }
|
2022-06-19 23:46:55 +02:00
|
|
|
|
2022-12-03 21:06:19 +01:00
|
|
|
# https://amp.{$BASE_DOMAIN} {
|
|
|
|
# import errorpages
|
2022-12-10 18:16:50 +01:00
|
|
|
# import logging
|
2022-12-03 21:06:19 +01:00
|
|
|
# reverse_proxy minecraft:8080
|
|
|
|
# }
|
2022-06-19 23:46:55 +02:00
|
|
|
|
2022-12-03 21:06:19 +01:00
|
|
|
# https://map.amp.{$BASE_DOMAIN} {
|
|
|
|
# import errorpages
|
2022-12-10 18:16:50 +01:00
|
|
|
# import logging
|
2022-12-03 21:06:19 +01:00
|
|
|
# root * /srv/bluemap
|
|
|
|
# file_server
|
2022-06-19 23:46:55 +02:00
|
|
|
|
2022-12-03 21:06:19 +01:00
|
|
|
# reverse_proxy /live/* minecraft:8123
|
2022-06-19 23:46:55 +02:00
|
|
|
|
2022-12-03 21:06:19 +01:00
|
|
|
# @JSONgz {
|
|
|
|
# path *.json
|
|
|
|
# file {
|
|
|
|
# try_files {path}.gz
|
|
|
|
# }
|
|
|
|
# }
|
2022-06-19 23:46:55 +02:00
|
|
|
|
2022-12-03 21:06:19 +01:00
|
|
|
# route @JSONgz {
|
|
|
|
# rewrite {http.matchers.file.relative}
|
|
|
|
# header Content-Type application/json
|
|
|
|
# header Content-Encoding gzip
|
|
|
|
# }
|
|
|
|
# }
|