I’ve been self hosting traditionally in debian, but I would like to be able to add services easier using docker. As such, I’m looking to move to a container based architecture.

One place I struggle is that I can’t seem to find a good container where the default image supports ACME to support Let’s encrypt for automatic cert renewal.

For Nginx, I would have you build my container. HAproxy ACME support seems to be a shell script.

Any suggestions?

  • stratself@lemdro.id
    link
    fedilink
    English
    arrow-up
    1
    ·
    6 minutes ago

    Caddy supports the HTTP-01 and TLS-ALPN-01 challenges by default, you just need to expose 80/443 and it just works. But if you want to use the DNS-01 challenge you’d need to build it with a plugin of your DNS provider.

    Traefik supports all 3 challenges equally ootb, with a wide range of DNS providers. But it is a bit harder to configure and doesn’t support being a web server.

  • JRaccoon@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    17
    ·
    23 hours ago

    I use Caddy and it’s great. ACME is very easy to configure, as is everything else. I haven’t tried running it in a container tho but they have official images published so it should work without issues.

    • Mereo@piefed.ca
      link
      fedilink
      English
      arrow-up
      7
      ·
      15 hours ago

      I don’t think running Caddy in a container is needed. All my apps are docker images and Caddy is a system app. I treated as an important OS app.

    • motruck@lemmy.zip
      link
      fedilink
      English
      arrow-up
      3
      ·
      14 hours ago

      I run it in a container without problems. All you have you do is bind it to port 80 and 443. I prefer the container to running it directly within the host OS for ease of portability.

      Also strongly recommend building it with support for DNS based validation. Using DNS validation you can have multiple instances running across the different servers you ha e to easily switch to or provide better local routing. For example please. I run one caddy frontend on a VPS that routes my traffic most of the time, but when I’m at home my DNS points me at a very instance that is running on my server on my home network avoiding the path of lit to the internet and back home. Using http based validation would require me to sync certs around.

  • SpicySquid@lemmy.ml
    link
    fedilink
    English
    arrow-up
    16
    ·
    23 hours ago

    This is usually where something like Traefik comes in. It will reverse proxy the docker instance and it can be configured to handle let’s encrypt. The are also other options I like nginx proxy manager and I think Caddy also can do this, by I don’t have experience with that.

    • cybervseas@lemmy.world
      link
      fedilink
      English
      arrow-up
      14
      ·
      22 hours ago

      Yep I use caddy for all that. Bonus is caddy has a docker compose proxy plugin where all your domain/port/cert config can be part of your each application’s compose file, rather than needing to make adjustments in caddy centrally. Works great for my purposes.

    • kaotic@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      21 hours ago

      Can confirm running Nginx Proxy Manager with 30 configurations. Been running solid for years.

    • Scott@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      2
      ·
      21 hours ago

      I’ve been having constant issues for over a year where it’s not able to auto update any of my certs. It has been erroring when I even try to do a manual update, but the second it’s deleted and reset up it’s fine (for the time being).

      • vaionko@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        1
        ·
        10 hours ago

        I recently installed on a new system, and it took of lot of tries with nondescript errors to get new certs fetched

        • Scott@sh.itjust.works
          link
          fedilink
          English
          arrow-up
          2
          ·
          12 hours ago

          I’ve only used it on 80/443 but this issue has been happening on numerous different VMs enough to the point I’ve just stopped using it for new installs.

  • silenium_dev@feddit.org
    link
    fedilink
    English
    arrow-up
    8
    ·
    edit-2
    23 hours ago

    Caddy or Traefik, depending on whether you want quick and simple (Caddy), or integration with docker, so you don’t have to write config files by hand (Traefik)

  • Scipitie@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    5
    ·
    23 hours ago

    Traefik and caddy were mentioned, the third in the game is usually nginxproxymanager.

    I’m using both traefik and nginx in two different setups. The nginxproxymanager can be configured via UI natively which makes checking configurations a bit easier.

    Traefik on the other hand is configured easily within the compose itself and you have everything in one place.

    This turned out to be tiresome though if you don’t have a monolithic compose file - that’s actually even hr history why I switched to npm in the first place.

    I don’t have any experience with caddy so can’t provide anecdotal insights there.

  • brainstorm@feddit.org
    link
    fedilink
    English
    arrow-up
    2
    ·
    22 hours ago

    I use traefik since I’m hosting stuff in docker and it works great. I think, Caddy is another popular pick, but I haven’t tried it and cannot tell you anything about it.

      • ikidd@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        11 hours ago

        I find some of the workflows in it a bit strange, like not having an Add button on the list of host proxies, it’s a separate menu item on the left which weird. And the way you request a SSL cert by hitting OK and then you get a popup asking if you want a cert, and you’d better have already set your options for how you want the cert, but if you create a host without a cert you have to go through all the options again and check them because it doesn’t keep track of your preference.

        IDK, in any case it fixed a bunch of problems I was having with NPM so it has that going for it, which is nice.

        • femtek@lemmy.blahaj.zone
          link
          fedilink
          English
          arrow-up
          2
          ·
          10 hours ago

          I have the same issues you listed. I only have one wildcard domain so it was only an issue once but I do think a UI change/workflow would help.

  • Decronym@lemmy.decronym.xyzB
    link
    fedilink
    English
    arrow-up
    1
    ·
    22 hours ago

    Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:

    Fewer Letters More Letters
    HTTP Hypertext Transfer Protocol, the Web
    k8s Kubernetes container management package
    nginx Popular HTTP server

    [Thread #122 for this comm, first seen 28th Feb 2026, 06:40] [FAQ] [Full list] [Contact] [Source code]