Files
ansible/roles/docker/files/Caddyfile
Phil f71ded1a01 feat: add Grocy kitchen ERP service
- Add grocy subdomain to domains.yml
- Create Docker Compose template using LinuxServer image
- Add Ansible task for service deployment
- Configure Caddy reverse proxy with Authentik auth and API bypass
- Add DNS record for grocy subdomain
- Integrate with productivity services category

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-28 08:47:28 -06:00

145 lines
2.7 KiB
Caddyfile

auth.thesatelliteoflove.com {
reverse_proxy authentik-server-1:9000
}
paper.thesatelliteoflove.com {
reverse_proxy paperlessngx-webserver-1:8000
}
pin.thesatelliteoflove.com {
reverse_proxy pinry-pinry-1:80
}
cal.thesatelliteoflove.com {
redir /.well-known/caldav /dav.php 302
redir /.well-known/carddav /dav.php 302
reverse_proxy baikal-baikal-1:80
}
books.thesatelliteoflove.com {
reverse_proxy authentik-server-1:9000
}
audio.thesatelliteoflove.com {
reverse_proxy audiobookshelf-audiobookshelf-1:80
}
post.thesatelliteoflove.com {
reverse_proxy postiz:5000
}
loclog.thesatelliteoflove.com {
reverse_proxy dawarich_app:3000
}
watcher.thesatelliteoflove.com {
reverse_proxy changedetection:5000
}
tasks.thesatelliteoflove.com {
reverse_proxy mmdl:3000
}
kanboard.thesatelliteoflove.com {
reverse_proxy kanboard:80
}
grocy.thesatelliteoflove.com {
# API endpoints bypass forward auth for mobile apps
handle /api/* {
reverse_proxy grocy:80
}
# Web interface requires Authentik authentication
forward_auth authentik-server-1:9000 {
uri /outpost.goauthentik.io/auth/caddy
copy_headers {
X-authentik-username
X-authentik-groups
X-authentik-email
X-authentik-name
X-authentik-uid
}
}
reverse_proxy grocy:80
}
phlog.thesatelliteoflove.com {
reverse_proxy ghost-1-ghost-1:2368
}
code.thesatelliteoflove.com {
reverse_proxy authentik-server-1:9000
}
snippets.thesatelliteoflove.com {
reverse_proxy bytestash:5000
}
files.thesatelliteoflove.com {
reverse_proxy palmr-palmr-1:5487
}
git.thesatelliteoflove.com {
reverse_proxy gitea:3000
}
thesatelliteoflove.com {
reverse_proxy /micropub/* micropub_server-micropub-1:5000
reverse_proxy /micropub micropub_server-micropub-1:5000
root * /srv/tsol
file_server
}
bookmarks.thesatelliteoflove.com {
reverse_proxy hoarder-web-1:3000
}
social.thesatelliteoflove.com {
reverse_proxy gotosocial:8080
}
models.thesatelliteoflove.com {
reverse_proxy manyfold-app-1:3214
}
home.thesatelliteoflove.com {
reverse_proxy authentik-server-1:9000
}
gotify.thesatelliteoflove.com {
reverse_proxy gotify:80
}
gotify-assistant.thesatelliteoflove.com {
reverse_proxy igotify-assistant:8080
}
pdg.thesatelliteoflove.com {
root * /srv/pdg
try_files {path} {path}.html {path}/ =404
file_server
encode gzip
handle_errors {
rewrite * /{err.status_code}.html
file_server
}
}
repair.nerder.land {
root * /srv/repair
file_server
}
nerder.land {
root * /srv/nerderland
file_server
}
forms.nerder.land {
reverse_proxy heyform-heyform-1:8000
}