Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[Support] binhex - caddy-duckdns

Featured Replies

Overview: Support for Docker image arch-caddy-duckdns in the binhex repo.

Application: Caddy - https://caddyserver.com/

Docker Hub: https://hub.docker.com/r/binhex/arch-caddy-duckdns/

GitHub: https://github.com/binhex/arch-caddy-duckdns

Documentationhttps://github.com/binhex/documentation

 

If you appreciate my work, then please consider buying me a beer  :D

 

btn_donate_SM.gif

 

For other Docker support threads and requests, news and Docker template support for the binhex repository please use the "General" thread here

  • Author

Just to be clear what this image is - This image includes Caddy with the module duckdns built in, this allows you to have a completely free and secure website, no domain registration, no certs need purchasing, look at the /config/caddy/config/Caddyfile for examples of how to configure this.

Caddy is such an easy reverse proxy

  • Author
12 minutes ago, ijuarez said:

Caddy is such an easy reverse proxy

Isn't it!, and i finally had my dream turn into a reality, the ability to reverse proxy using free duckdns and let's encrypt using a simple configuration file, I creatd this primarily for me so that i can finally run Seerr securely for friends and family with zero cost without the need for tailscale/wireguard/openvpn shenanigans, love it!.

The ONLY downside is Seerr does not currently support base url configuration, see open issue, but that is a Seerr issue not a Caddy issue.

  • Author

A quick heads up, there was missing configuration for Caddy meaning the generated Let's Encrypt cert was copied inside the container and thus did not persist, the latest image fixes this but it does require that you modify your existing Caddyfile, so please add the following line in the block at the top of the Caddyfile where the ports are defined:

    storage file_system /config/caddy/data

This basically instructs Caddy to store all generated data in the /config bind mount and thus will persist, if you are unsure as to what it should look like see here

  • 3 weeks later...

Hello, I hope this is the right thread for this question. Thanks in advance for any help.

I'm trying to use binhex-caddy-duckdns as a reverse proxy for another docker container listening on port 8096. I left all settings on default, other than adding my duckdns token. My DuckDNS domain is correctly resolved to my public IP, my router correctly forwards the port to my server, and my request is processed by Caddy, but then something goes wrong. In the docker logs I find the error message: dial tcp: lookup host-ip on <MY ROUTER'S IP>:53: no such host

Anonymized Caddyfile and full error log message attached.

errormsg.txtCaddyfile

  • Author
4 hours ago, Colamann said:

dial tcp: lookup host-ip on <MY ROUTER'S IP>:53: no such host

that looks very much like a dns related issue, so the docker container must be pointing at your router for dns resolution, and i assume your router's dns does not know about your '<MY DUCKDNS DOMAIN>' and thus the failure, have a look at your router and fix the dns resolution issue would be my starting point.

Ok, I think I was just being dumb. I had this in my Caddyfile, based on the examples given:

reverse_proxy  host-ip:8096
I assumed host-ip was a variable that contained the IP of the docker host. I guess it just means "put your host IP here", right? Because doing that worked 🤦‍♂️

Thanks anyway!

  • 1 month later...

Hi I'm hoping I could get some help and pointers here, the only big change I did was change the internal ports but everything else should be the same and it even runs but when I try to connect nothing happens.

errormsg.txtCaddyfile

Edited by Axel.D.

  • Author
On 5/29/2026 at 3:07 AM, Axel.D. said:

Hi I'm hoping I could get some help and pointers here, the only big change I did was change the internal ports but everything else should be the same and it even runs but when I try to connect nothing happens.

caddyfile.txterrormsg.txt

you got two problem i spotted:

  1. the first block is not formed correctly, there is no opening brackets:


    http_port 8081
    https_port 8444
    storage file_system /config/caddy/data
}

missing {

  1. you forgot to change mydomain to your domain in duckdns, replace all occurances of mydomain with your domain in duckdns.

Damn I sent the wrong caddyfile just updated the post.

Edited by Axel.D.

  • Author
6 hours ago, Axel.D. said:

Damn I sent the wrong caddyfile just updated the post.

You stil have mydomain in there, from your file:

# Default http file server
:8080 {
    import log_settings mydomain.duckdns.org.8080
    import block_world
    root * /config/caddy/www
    file_server
}
13 hours ago, binhex said:
You stil have mydomain in there, from your file:

# Default http file server
:8080 {
    import log_settings mydomain.duckdns.org.8080
    import block_world
    root * /config/caddy/www
    file_server

I should have deleted the examples but the reverse proxy I am trying to do is at the bottom, unless I still need to change this ^ as well.

Edit I reinstalled the container and set it up like you said and it worked thank you for the help.

Edited by Axel.D.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.