{ email {$TLS_EMAIL} acme_ca https://acme-staging-v02.api.letsencrypt.org/directory # header / Strict-Transport-Security "max-age=31536000;" log { output stdout } } (errorpages) { handle_errors { root /srv/errorpages rewrite * /{http.error.status_code}.html file_server } } # http://autoconfig.{$BASE_DOMAIN} { # root /srv/autoconfig # file_server # } https://proxy.{$BASE_DOMAIN} { import errorpages # tls {$TLS_EMAIL} { # key_type rsa4096 # } # on certrenew echo reload | nc reloader:9000 # root /srv/homepage # rewrite .* /homepage/{uri} # git { # repo ssh://git@gitea:/carsten/homepage.git # path /build/homepage # key /root/deploy_keys/caddy # hook /__gitea_hook__ lajrbgclnusgtbmslgtbec # clone_args --recurse-submodules # pull_args --recurse-submodules # then hugo --cleanDestinationDir --destination /srv/homepage # } reverse_proxy /_matrix matrix:8008 reverse_proxy / homepage:80 } # https://{$BASE_DOMAIN}:8448 { # import errorpages # reverse_proxy / matrix:8008 # } https://echo.{$BASE_DOMAIN} { import errorpages reverse_proxy / echo:8000 } https://ci-demo.{$BASE_DOMAIN} { import errorpages reverse_proxy / docker-ci-demo:8000 } # https://stuff.{$BASE_DOMAIN} { # import errorpages # root /srv/stuff # browse # basicauth /dev dev {$DEV_PASS} # } https://cloud.{$BASE_DOMAIN} { import errorpages redir { /.well-known/carddav /remote.php/dav /.well-known/caldav /remote.php/dav /.well-known/webfinger /public.php?service=webfinger } reverse_proxy / nextcloud:80 } https://bitwarden.{$BASE_DOMAIN} { import errorpages reverse_proxy /notifications/hub/negotiate bitwarden:80 reverse_proxy /notifications/hub bitwarden:3012 reverse_proxy / bitwarden:80 } https://git.{$BASE_DOMAIN} { import errorpages reverse_proxy / gitea:3000 } https://ci.{$BASE_DOMAIN} { import errorpages reverse_proxy / drone:80 } https://hackmd-next.{$BASE_DOMAIN} { import errorpages reverse_proxy / codimd:3000 } https://md.{$BASE_DOMAIN} { import errorpages reverse_proxy / non-existent:3000 } https://amp.{$BASE_DOMAIN} { import errorpages reverse_proxy /map minecraft:8123 reverse_proxy / minecraft:8080 }