Secure Your Kamal App Deployments with Let's Encrypt

Поделиться
HTML-код
  • Опубликовано: 25 окт 2024

Комментарии • 13

  • @robhill1268
    @robhill1268 2 месяца назад +1

    Thanks Dennis. An excellent presentation and explanation.

    • @DevTesterBlog
      @DevTesterBlog  2 месяца назад

      Thank you so much, I hope it helped!

  • @TheStalinBR
    @TheStalinBR Месяц назад +1

    Excellent explanation. Thanks so much.

    • @DevTesterBlog
      @DevTesterBlog  11 дней назад

      Thanks for the comment, I hope this video helped!

  • @abdullahsaleh7196
    @abdullahsaleh7196 2 дня назад

    Keep it up bro

  • @JustBCWi
    @JustBCWi 2 месяца назад

    I had a hard time getting Let's Encrypt to work. Followed your video, which exposed the problem (not having the right path in the Container).

    • @DevTesterBlog
      @DevTesterBlog  2 месяца назад

      I'm glad the video helped you find the issue!

  • @dmarczal
    @dmarczal 2 месяца назад

    Great content, but how to do this work with rootless context? I can't get this to work using a user with docker rootless permission. I guess it need some configuration at the rootless, but I can't find it.

    • @DevTesterBlog
      @DevTesterBlog  2 месяца назад

      I haven't used Kamal with Docker in rootless mode, so I'm not sure how to get it working that way or even if it's possible. A quick search online shows that it should be possible, but haven't seen anyone say how. I'm guessing the main issue will be around binding privileged ports (ports under 1024) for Traefik. I'm curious to see if it's a possibility, so I'll tinker around with it to see if I can find a solution.

  • @hansdampf10
    @hansdampf10 2 месяца назад

    Great content!!! Best source i have ever found which explains the traefik labels, how would you handle the www redirection like i want to access my application with www and without.
    Is it possible to configure multiple domains to one application which all have their own certificates? I want to route different domains to my app and handle the routing internally in the rails app.

    • @DevTesterBlog
      @DevTesterBlog  2 месяца назад +1

      Thanks for the kind words! I'm glad you found some value out of this video.
      For doing redirections like you mentioned from www to non-www, you'll need to create middleware (which you can do through labels) that uses regex to capture the user going to the www domain and redirects them to the non-www domain. Then you can add the middleware to the Traefik router. Here's an example configuration file showing the labels under the `servers` section: gist.github.com/dennmart/91981691f16def7e99b5068be3a0660b
      As for setting up multiple domains to use SSL, you'll need a wildcard certificate from Let's Encrypt. However, you can't use the HTTP challenge to generate the certificate (as shown in this video). You'll need to set up a DNS challenge instead. Traefik does have support for this as well: doc.traefik.io/traefik/https/acme/#dnschallenge. I've never done this myself, but I'll explore it and maybe do a future video about it.

    • @hansdampf10
      @hansdampf10 2 месяца назад

      @@DevTesterBlog yes i found some examples for the dnschallenge but from my understanding i need this for wildcard certificates. What if i want just different domains i mean complete different domains like domain1 and domain2 can i use there still the web challenge?
      You should make a video about middleware it took me quite a while to find out how i enable gzip in traefik but got it working in the end.

    • @DevTesterBlog
      @DevTesterBlog  2 месяца назад

      @@hansdampf10 You can create different routers for the web app in Kamal that point to different domains (using the `traefik.http.routers.` labels as I showed in the video), and your app should generate the SSL certificates for each domain using the web challenge. I did a quick test and it worked great. Let me know if you need help setting that up.
      Also, thanks for the video suggestion - look for a future video talking about Traefik middleware!