mirror of
https://github.com/NginxProxyManager/nginx-proxy-manager.git
synced 2026-04-25 17:35:52 +03:00
[GH-ISSUE #662] certbot-dns-cloudflare no longer installed #561
Labels
No labels
awaiting feedback
bug
cannot reproduce
dns provider request
duplicate
enhancement
enhancement
enhancement
good first issue
help wanted
invalid
need more info
no certbot plugin available
product-support
pull-request
question
stale
troll
upstream issue
v2
v2
v2
v3
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/nginx-proxy-manager-NginxProxyManager#561
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @mochman on GitHub (Oct 16, 2020).
Original GitHub issue: https://github.com/NginxProxyManager/nginx-proxy-manager/issues/662
Starting with 2.6.0 and also on 2.6.1, I get an error on startup and any time I try to renew my let's encrypt certs.
Running
pip3 list | grep certbotin the docker image shows that only certbot is installed.It looks like the certbot-dns-cloudflare module isn't installed.
I can run
pip3 install certbot-dns-cloudflarein the docker image and the error goes away. I am now able to automatically & manually renew my certs.Going through the diffs between 2.5.0 and 2.6.0, it looks like the this change to the Dockerfile is causing the problem.
I'm guessing that this is to handle the change to allow for multiple DNS providers.
For those that have the same problem, running
docker exec -it PROXY_APP_NAME pip3 install certbot-dns-cloudflareshould fix the issue.@jc21 commented on GitHub (Oct 16, 2020):
@chaptergy is this related to #635 ?
@mochman commented on GitHub (Oct 17, 2020):
Yeah, the change to the Dockerfile was made in that pull request.
I tried creating new certs in 2.6.1 using the new system, but I still got the same error as before (after a fresh docker pull). I'll look more through the new DNS challenge updates to see if it's just something strange on my end.
@mochman commented on GitHub (Oct 17, 2020):
Alright, I think I got it figured out. The issue is in
/backend/internal/certificate.js.The function called
requestLetsEncryptSslWithDnsChallengewill install the correct module based on what the user selects for their DNS provider. The issue is that function is only called on a new certificate creation, not on startup or renewal.After a new cert is created, everything works normally through container restarts.
@chaptergy commented on GitHub (Oct 17, 2020):
renewLetsEncryptSslWithDnsChallengewill also install the correct module. This means these is a second different renew function somewhere, which is not specific for a single certificate but renews all of them. I'll start looking for that.@chaptergy commented on GitHub (Oct 17, 2020):
Okay, the issue is in
processExpiringHosts, where a non-certificate-specific renew is called and no plugins are installed prior. I'll get to fixing the issue. So as a workaround for now klicking on the three dots next to the certificate and then on "renew now" should work too.@chaptergy commented on GitHub (Nov 6, 2020):
Fixed by #664, can be closed @jc21