Hello. I’m migrating from Truecharts to Dockge. The existing video tutorials have been great at getting me most of the way there. I have Jailmaker, Docker and Dockge all installed and working correctly.
I want some of my apps to work via custom domain names. In truecharts, I set this up with Cloudflare, DuckDNS and Traefik. With the new setup, I am trying to use Cloudflare, DuckDNS and Nginx Proxy Manager. I feel I’m pretty close as I have: certificate reporting as created and working in NPM, the app it should point to working at an HTTP URL.
I believe the problem is that the application I’m trying to set up does not have HTTPS enabled. Some applications allow turning HTTPS on within their settings. But, I am setting up Airsonic which does not seem to have this setting exposed in the GUI.
Is there something I can put in environment variables or composer configuration that turns HTTPS on? Or, is that something I set up in the Docker config file? Or, am I off track regarding HTTPS and there is something else I should check?
Information about my system:
Dragonfish-24.04.2
Jailmaker, Docker and Dockge installed per LamG4 and Capt Stux videos
If you’re putting your apps behind NPM, NPM should be handing the TLS termination and HTTPS redirection. This isn’t anything you’d configure in the individual apps, but rather something you’d set up in NPM.
Or you could ditch NPM and use Caddy instead. You’d lose the GUI though.
I can’t really tell what to change in NPM or how to troubleshoot it. Because NPM tells me that its set up correctly. I followed what LamG4 shows for Nextcloud. But, it doesn’t seem to work for Airsonic the same way…
I’d be interested in learning more about Caddy. I wouldn’t necessarily mind losing GUI as long as it is still straight forward to use and well documented…
And I’m afraid I can’t help with NPM as I’ve never used it.
With respect to Caddy, though, I’m running it in Dockge (though not on TrueNAS) to handle proxying for some other apps there. Configuration is through its config file (the Caddyfile). A reverse proxy entry for that Caddyfile looks like this:
That’s all you need–Caddy will obtain a cert for this domain name, handle HTTPS redirection, use a sensible TLS configuration, and handle the reverse proxy automatically. It’s a pretty unusual app that needs more involved configuration than this, though you can get more into the weeds if you choose.
Now, if the app in question can be configured for a base URL, you’ll want to make sure that’s set for HTTPS.
I’ve setup traefik in my jail, added the required labels to the compose files of the apps that i wanted to expose and traefik handels the certs, so i basically reproduced my truecharts setup in my jail.
The Guide Dan linked is the one i’ve used. In the video description is a link to his written Guide where Theres a Demo Container Compose File that Shows the requires labels
Internally NPM will send requests for the domain name to http://prowlarr:9696… matching the hostname in your docker compose and port in your docker compose … if an app does not answer or gives an error on http try https NPM will show like this (I cut off the outside facing url as this screenshot is live
That was the key! I had it on HTTPS. Didn’t realize that it needed to match the INTERNAL location. Thank you!
Thank you everyone for your input. I’m going to try NPM for a bit since its all working now. But, still very helpful to know I have the option to go to Traefik as well (and where a good guide is).