The code is ready (ARGUS_ROOT_PATH support landed in the PR). Three steps needed on the homelab machine.
1. Add nginx location block
Edit services/funnel-proxy/nginx.conf:
location ^~ /argus/ {
auth_request /oauth2/auth;
error_page 401 = /oauth2/sign_in;
set $backend "172.20.0.1:8005";
proxy_pass http://$backend/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto https;
}
2. Add to .env on the homelab
3. Reload + restart
docker exec funnel-proxy nginx -t && docker exec funnel-proxy nginx -s reload
sudo systemctl restart argus
Verify
curl -I https://khamel.com/argus/dashboard
# Expect 302 → Authentik login (or 200 if already logged in)
Notes
- Port 8005 is set in
scripts/start-server.sh (ARGUS_PORT=8005)
- Authentik handles auth at the nginx layer — leave
ARGUS_ADMIN_API_KEY unset, no second password prompt
- Dashboard auto-refreshes budget data every 60s via HTMX polling
The code is ready (ARGUS_ROOT_PATH support landed in the PR). Three steps needed on the homelab machine.
1. Add nginx location block
Edit
services/funnel-proxy/nginx.conf:2. Add to
.envon the homelab3. Reload + restart
Verify
curl -I https://khamel.com/argus/dashboard # Expect 302 → Authentik login (or 200 if already logged in)Notes
scripts/start-server.sh(ARGUS_PORT=8005)ARGUS_ADMIN_API_KEYunset, no second password prompt