Coder Social home page Coder Social logo

Comments (13)

emilevauge avatar emilevauge commented on May 17, 2024 2

Hi @F0rth, I'm currently already working on that ^^

from traefik.

jpillora avatar jpillora commented on May 17, 2024

👍 letsencrypt all the things!

from traefik.

ludovicc avatar ludovicc commented on May 17, 2024

There is a Go library (https://github.com/xenolf/lego) used by Caddy.

from traefik.

emilevauge avatar emilevauge commented on May 17, 2024

@ludovicc yep, I have seen what Caddy does with letsencrypt using lego. It would be awesome to add that feature in Traefik :)

from traefik.

strarsis avatar strarsis commented on May 17, 2024

+1

from traefik.

sheerun avatar sheerun commented on May 17, 2024

I'm also interested. Maybe running traefik on top of consul-template would work?

from traefik.

strarsis avatar strarsis commented on May 17, 2024

https://github.com/emilevauge/traefik/issues/211, #217 and #212

from traefik.

emilevauge avatar emilevauge commented on May 17, 2024

Hi all, I created a traefik docker image with let's encrypt support: containous/traefik:add-lets-encrypt-suppport
I invite you to test it before the PR is merged ;)
Here is the new toml file to use:

defaultEntryPoints = ["http", "https"]

[entryPoints]
  [entryPoints.http]
  address = ":80"
    [entryPoints.http.redirect]
    entryPoint = "https"
  [entryPoints.https]
  address = ":443"
    [entryPoints.https.tls]

[acme]
email = "[email protected]"
# group domains to get SNA
domains = [["test.local1.com", "test.local2.com"], ["test.local4.com", "test.local3.com"]]
storageFile = "acme.json" # mount it in a volume ;)
# Uncomment to load SSL cert on demand (be careful)
#onDemand = true
# Uncomment the line to run on the staging let's encrypt server
# Leave comment to go to prod
# caServer = "https://acme-staging.api.letsencrypt.org/directory"
entryPoint = "http" #  must point to an entrypoint on port 80

Your feedback is welcome :)

from traefik.

strarsis avatar strarsis commented on May 17, 2024

So the domains for the ACME client are listed in the domains option of acme key in configuration file.
Can this also be dynamically changed? Could one flag containers with an acme or even letsencrypt flag so traefik knows that the domains in the routes for these containers should have certs/keys requests over acme?

from traefik.

emilevauge avatar emilevauge commented on May 17, 2024

@strarsis, thanks for your feedback!
If you enable onDemand = true, traefik will dynamically download cert at the first request.
But, this is not perfect, I know that.
Maybe a new option on frontend, that would trigger cert download.
I was wondering if I had to rely directly on Host frontend rules, but they can be also wildcard :'(

from traefik.

thorhs avatar thorhs commented on May 17, 2024

Maybe this could fit? https://github.com/dkumor/acmewrapper

from traefik.

djmaze avatar djmaze commented on May 17, 2024

@emilevauge Letsencrypt does not (yet) support wildcard certificates, and generating certificates upon request is not desirable. So, in my opinion, if the Host rule contains a wildcard, ACME/SSL support should automatically be disabled for that particular frontend. Then certificates need to be generated only when a new frontend is added.

from traefik.

djmaze avatar djmaze commented on May 17, 2024

@emilevauge Your toml file example works for me if I set defaultEntryPoints to just ["https"]. Otherwise Traefik only serves the backend service on port 80, and the .well-known directory is not reachable.

from traefik.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.