This page looks best with JavaScript enabled

Nginx Proxy Manager Update Broke

 ·   ·  ☕ 2 min read

While back I updated my nginx-proxy-manager container and it broke, throwing an error message similar to this:

[nginx ] nginx: [emerg] cannot load certificate "/etc/letsencrypt/live/npm-3/fullchain.pem"

If you google around you can find this GitHub issue about the problem, that suggests your certs are lost forever if you didn’t have the folder set as a volume or have a backup. I do actually have the folder as a local folder mounted as a volume, so I was confused about why I was seeing the error when all my certs were there. I’m not sure where I went wrong or how the update broke, but the solution I found was to just copy the contents of whatever the latest npm-X folder was from wherever /etc/letsencrypt/live is mounted, and create a new folder matching where the error says it is looking for the certs. I just pasted the old certs into that folder and nginx was happy. I can also see that since then it’s handled the cert renewal properly and a new folder was created as expected.

As far as the why, I’m not sure but I did also experience this concurrent issue. My IP address changed and this caused my registrar’s API Access challenge system to fail as my new IP wasn’t whitelisted. I had to go back in to Namecheap and redo the process with my new IP, setting up the DNS challenge again, this fixed it. The process is a bit hidden so I’m including these steps for the process I got from Reddit user colorfularchipelago:

Log into your namecheap account.

On the left, click on “Profile”, which should be last on the list of options to choose.

Click on “Tools”.

In the bottom section, click on the “MANAGE” button next to “Namecheap API Access”.

Click the button to turn it on.

Leave that browser tab open so you have easy access to the API key.

In a new browser tab, open up Nginx Proxy Manager.

You can get a new SSL either from either the main SSL tab or the SSL tab while creating a new proxy host.

Enable the “Use a DNS challenge” button.

Select “Namecheap” in the “DNS Provider” dropdown.

This will open up a “Credentials Files Content” section. For “dns_namecheap_username” put in your Namecheap username.

For “dns_namecheap_api_key” put in the API key from Namecheap, from step 6.

Put in the email address you want to use.

Agree to the ToS.

Click “Save”.

Share on
Support the author with

omar saleem
WRITTEN BY
omar saleem
Software/DevOps Engineer