Files
caddy/config/Caddyfile
2025-11-18 14:43:08 -05:00

161 lines
3.2 KiB
Caddyfile

{
email {env.ACME_EMAIL}
servers {
client_ip_headers X-Forwarded-For
trusted_proxies static private_ranges
trusted_proxies_strict
}
order crowdsec before respond
crowdsec {
api_url http://crowdsec:8080
api_key {$CROWDSEC_API_KEY}
}
}
# Subdomains
*.housh.dev {
tls {
dns cloudflare {env.CF_AUTH_TOKEN}
resolvers 1.1.1.1
}
log {
level INFO
output file /var/log/caddy/access.log
}
@pos host po.housh.dev
handle @pos {
reverse_proxy http://roguemini.housh.dev:8082
crowdsec
}
@legacypos host legacy-po.housh.dev
handle @legacypos {
reverse_proxy http://roguemini.housh.dev:5000
crowdsec
}
@gitea host git.housh.dev
handle @gitea {
reverse_proxy gitea:3000
crowdsec
}
@dash host dash.housh.dev
handle @dash {
reverse_proxy http://roguemini.housh.dev:7575
crowdsec
}
@komodo host komo.housh.dev
handle @komodo {
reverse_proxy komodo:9120
crowdsec
}
@excalidraw host draw.housh.dev
handle @excalidraw {
reverse_proxy excalidraw:80
crowdsec
}
@uptimekuma host uptime.housh.dev
handle @uptimekuma {
reverse_proxy uptime_kuma:3001
crowdsec
}
@immich host photos.housh.dev
handle @immich {
# Immich public proxy.
@public path /share /share/*
handle @public {
reverse_proxy http://frankenmini.housh.dev:3000
crowdsec
}
handle {
reverse_proxy http://frankenmini.housh.dev:2283
crowdsec
}
}
@snapp host s.housh.dev
handle @snapp {
reverse_proxy http://roguemini.housh.dev:3000
crowdsec
}
@docs host docs.housh.dev
handle @docs {
reverse_proxy docs:80
crowdsec
}
@pocket_id host id.housh.dev
handle @pocket_id {
reverse_proxy pocket-id:1411
crowdsec
}
@plausible host plausible.housh.dev
handle @plausible {
reverse_proxy http://roguemini.housh.dev:8004
crowdsec
}
@vaultwarden host vaultwarden.housh.dev
handle @vaultwarden {
reverse_proxy http://roguemini.housh.dev:8888
crowdsec
}
@calendar host calendar.housh.dev
handle @calendar {
reverse_proxy http://frankenmini.housh.dev:5232
crowdsec
}
@ollama host ollama.housh.dev
handle @ollama {
reverse_proxy http://roguemini.housh.dev:3001
crowdsec
}
@shlink host l.housh.dev
handle @shlink {
reverse_proxy http://roguemini.housh.dev:8880
crowdsec
}
@shlink_web host shlink.housh.dev
handle @shlink_web {
reverse_proxy http://roguemini.housh.dev:8881
crowdsec
}
}
# Console
console.mightymini.housh.dev {
tls {
dns cloudflare {env.CF_AUTH_TOKEN}
resolvers 1.1.1.1
}
log {
level INFO
output file /var/log/caddy/access.log
}
reverse_proxy https://192.168.50.6:9090 {
transport http {
tls_insecure_skip_verify
}
}
crowdsec
}