Welcome
How do you use lego?
Docker image
Effective version of lego
v4.33.0 (I think)
Detailed Description
I use Dokku and its letsencrypt plugin, that is based on lego and is run within a Docker image. The only way to "drive" it is through environment variables and as I see it there's no way to provide the code to be run. Hence, as I understand it, this is the only provider that is not supported there.
I see different ways to address this, one on the letsencrypt plugin in Dokku, one here. I'll probably ask the same question there, but I wonder if it's of interest also here, considering that lego itself is also distributed as a Docker image. Of course, solving the issue here would also solve the problem there, so this is why I'm starting here.
One way to provide the code to execute would be in an environment variable itself, like EXEC_CODE or EXEC_CODE_BASE64. This has the pro of being straightforward and the drawback of environment size (it seems that the limit is about 32 kbyte or so).
Another way would be to set a path to somewhere in the net in an environment variable like EXEC_SOURCE or EXEC_URL, from where the program could be downloaded. This is slightly more complicated to setup (it needs something that is capable of providing the code via network) but would stick to using environment variables for data and not for code.
In either case, the new environment variable would allow ensuring the program pointed by EXEC_PATH exists.
It's all for my 2c suggestion, thank you for your attention!
Welcome
How do you use lego?
Docker image
Effective version of lego
v4.33.0 (I think)
Detailed Description
I use Dokku and its letsencrypt plugin, that is based on lego and is run within a Docker image. The only way to "drive" it is through environment variables and as I see it there's no way to provide the code to be run. Hence, as I understand it, this is the only provider that is not supported there.
I see different ways to address this, one on the letsencrypt plugin in Dokku, one here. I'll probably ask the same question there, but I wonder if it's of interest also here, considering that lego itself is also distributed as a Docker image. Of course, solving the issue here would also solve the problem there, so this is why I'm starting here.
One way to provide the code to execute would be in an environment variable itself, like
EXEC_CODEorEXEC_CODE_BASE64. This has the pro of being straightforward and the drawback of environment size (it seems that the limit is about 32 kbyte or so).Another way would be to set a path to somewhere in the net in an environment variable like
EXEC_SOURCEorEXEC_URL, from where the program could be downloaded. This is slightly more complicated to setup (it needs something that is capable of providing the code via network) but would stick to using environment variables for data and not for code.In either case, the new environment variable would allow ensuring the program pointed by
EXEC_PATHexists.It's all for my 2c suggestion, thank you for your attention!