Nginx Proxy Manager updater fails #2191

Closed
opened 2026-02-05 04:09:11 +03:00 by OVERLORD · 9 comments
Owner

Originally created by @bwhybrow23 on GitHub (Dec 18, 2025).

Have you read and understood the above guidelines?

yes

🔎 Did you run the script with verbose mode enabled?

Yes, verbose mode was enabled and the output is included below

📜 What is the name of the script you are using?

Nginx Proxy Manager

📂 What was the exact command used to execute the script?

update

⚙️ What settings are you using?

  • Default Settings
  • Advanced Settings

🖥️ Which Linux distribution are you using?

Debian 13

📈 Which Proxmox version are you on?

pve-manager/8.4.14/b502d23c55afcba1 (running kernel: 6.8.12-15-pve)

📝 Provide a clear and concise description of the issue.

Tried to run update through the existing console for Nginx Proxy Manager (which was installed using a script) and it has failed. I did also try running the install command from the website again as I know this is an alternative to update bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/nginxproxymanager.sh)" and this also failed with the same error as below.

🔄 Steps to reproduce the issue.

Step 1: Run update in the console for the container
Step 2: Select verbose mode
Step 3: Error

Paste the full error output (if available).

    _   __      _               ____                           __  ___                                 
   / | / /___ _(_)___  _  __   / __ \_________  _  ____  __   /  |/  /___ _____  ____ _____ ____  _____
  /  |/ / __ `/ / __ \| |/_/  / /_/ / ___/ __ \| |/_/ / / /  / /|_/ / __ `/ __ \/ __ `/ __ `/ _ \/ ___/
 / /|  / /_/ / / / / />  <   / ____/ /  / /_/ />  </ /_/ /  / /  / / /_/ / / / / /_/ / /_/ /  __/ /    
/_/ |_/\__, /_/_/ /_/_/|_|  /_/   /_/   \____/_/|_|\__, /  /_/  /_/\__,_/_/ /_/\__,_/\__, /\___/_/     
      /____/                                      /____/                            /____/             

Hit:1 http://security.debian.org trixie-security InRelease
Hit:2 http://deb.debian.org/debian trixie InRelease                                                                                                     
Hit:3 http://deb.debian.org/debian trixie-updates InRelease                                                                                             
Hit:4 http://openresty.org/package/debian bullseye InRelease                                                                   
Hit:5 https://deb.nodesource.com/node_22.x nodistro InRelease       
Hit:6 https://pkg.cloudflare.com/cloudflared any InRelease
All packages are up to date.    
Warning: http://openresty.org/package/debian/dists/bullseye/InRelease: Policy will reject signature within a year, see --audit for details
Warning: https://deb.nodesource.com/node_22.x/dists/nodistro/InRelease: Policy will reject signature within a year, see --audit for details
Warning: https://pkg.cloudflare.com/cloudflared/dists/any/InRelease: Policy will reject signature within a year, see --audit for details
Notice: Missing Signed-By in the sources.list(5) entry for 'http://openresty.org/package/debian'

changed 10 packages in 2s

16 packages are looking for funding
  run `npm fund` for details
  ✔️   Update Node.js 22
  ⏳   Updating yarn to latest version
changed 1 package in 597ms
  ✔️   Installed Node.js modules: yarn
  ✔️   Deployed: nginxproxymanager (2.13.4)
  ✔️   Stopped Services
  ✔️   Cleaned old files
  ✔️   Set up Environment
yarn install v1.22.22
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
warning " > @uiw/react-textarea-code-editor@3.1.1" has unmet peer dependency "@babel/runtime@>=7.10.0".
[4/4] Building fresh packages...
Done in 68.56s.
yarn run v1.22.22
$ tsc && vite build
vite v7.1.12 building for production...
✓ 7794 modules transformed.
dist/index.html                                     1.34 kB │ gzip:   0.61 kB
dist/assets/index-YJRSYeqY.css                      0.10 kB │ gzip:   0.11 kB
dist/assets/index-BJF_4ZT_.css                    543.36 kB │ gzip:  70.10 kB
dist/assets/CertificateFormatter-CeqeR-SL.js        0.22 kB │ gzip:   0.19 kB
dist/assets/TrueFalseFormatter-C3L3QbV5.js          0.33 kB │ gzip:   0.24 kB
dist/assets/IconPower-DvX5xW9v.js                   0.37 kB │ gzip:   0.28 kB
dist/assets/ValueWithDateFormatter-UOUBvOrH.js      0.44 kB │ gzip:   0.27 kB
dist/assets/IconHelp-DCXFz_vg.js                    0.46 kB │ gzip:   0.31 kB
dist/assets/IconEdit-B3gE3SR-.js                    0.50 kB │ gzip:   0.33 kB
dist/assets/DomainsFormatter-BoT6f4EV.js            0.86 kB │ gzip:   0.50 kB
dist/assets/index-CJVrB2pr.js                       1.82 kB │ gzip:   0.95 kB
dist/assets/IconTrash-TCFydYjJ.js                   2.05 kB │ gzip:   0.79 kB
dist/assets/index-BOuY2Obz.js                       2.45 kB │ gzip:   1.04 kB
dist/assets/index-CVmlp5_H.js                       3.01 kB │ gzip:   0.73 kB
dist/assets/index-Mci0g5fc.js                       3.42 kB │ gzip:   1.21 kB
dist/assets/index-Y1J-CR08.js                       4.71 kB │ gzip:   1.75 kB
dist/assets/index-CDWGX8hA.js                       5.26 kB │ gzip:   2.00 kB
dist/assets/index-D4U_aIgG.js                       5.80 kB │ gzip:   2.13 kB
dist/assets/index-Ce2DwVNF.js                       5.83 kB │ gzip:   2.09 kB
dist/assets/index-DkNXx0EH.js                       5.88 kB │ gzip:   2.15 kB
dist/assets/index-C4jgmLMW.js                       6.75 kB │ gzip:   2.49 kB
dist/assets/index-wDV9ExCs.js                       7.14 kB │ gzip:   1.90 kB
dist/assets/index-xTK1dRzL.js                      40.85 kB │ gzip:  14.69 kB
dist/assets/TableLayout-Bh3My8k1.js                50.49 kB │ gzip:  13.68 kB
dist/assets/index-gIHubYKY.js                   2,050.03 kB │ gzip: 644.92 kB

(!) Some chunks are larger than 500 kB after minification. Consider:
- Using dynamic import() to code-split the application
- Use build.rollupOptions.output.manualChunks to improve chunking: https://rollupjs.org/configuration-options/#output-manualchunks
- Adjust chunk size limit for this warning via build.chunkSizeWarningLimit.
✓ built in 17.16s
Done in 26.07s.
  ✔️   Built Frontend
yarn install v1.22.22
[1/4] Resolving packages...
[2/4] Fetching packages...
warning lru.min@1.1.2: The engine "bun" appears to be invalid.
warning lru.min@1.1.2: The engine "deno" appears to be invalid.
[3/4] Linking dependencies...
warning " > @apidevtools/swagger-parser@10.1.1" has unmet peer dependency "openapi-types@>=7".
[4/4] Building fresh packages...
Done in 8.18s.
  ✔️   Initialized Backend
Hit:1 http://openresty.org/package/debian bullseye InRelease
Hit:2 http://deb.debian.org/debian trixie InRelease                                                                                                     
Hit:3 http://security.debian.org trixie-security InRelease                                                            
Hit:4 http://deb.debian.org/debian trixie-updates InRelease                               
Hit:5 https://deb.nodesource.com/node_22.x nodistro InRelease       
Hit:6 https://pkg.cloudflare.com/cloudflared any InRelease
All packages are up to date.    
Warning: http://openresty.org/package/debian/dists/bullseye/InRelease: Policy will reject signature within a year, see --audit for details
Warning: https://deb.nodesource.com/node_22.x/dists/nodistro/InRelease: Policy will reject signature within a year, see --audit for details
Warning: https://pkg.cloudflare.com/cloudflared/dists/any/InRelease: Policy will reject signature within a year, see --audit for details
Notice: Missing Signed-By in the sources.list(5) entry for 'http://openresty.org/package/debian'
openresty is already the newest version (1.27.1.2-1~bullseye1).
Summary:
  Upgrading: 0, Installing: 0, Removing: 0, Not Upgrading: 0
Requirement already satisfied: pip in /usr/lib/python3/dist-packages (25.1.1)
Collecting pip
  Downloading pip-25.3-py3-none-any.whl.metadata (4.7 kB)
Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (78.1.1)
Collecting setuptools
  Downloading setuptools-80.9.0-py3-none-any.whl.metadata (6.6 kB)
Requirement already satisfied: wheel in /usr/lib/python3/dist-packages (0.46.1)
Requirement already satisfied: packaging>=24.0 in /usr/lib/python3/dist-packages (from wheel) (25.0)
Downloading pip-25.3-py3-none-any.whl (1.8 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 3.6 MB/s eta 0:00:00
Downloading setuptools-80.9.0-py3-none-any.whl (1.2 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 5.7 MB/s eta 0:00:00
Installing collected packages: setuptools, pip
  Attempting uninstall: setuptools
    Found existing installation: setuptools 78.1.1
    Not uninstalling setuptools at /usr/lib/python3/dist-packages, outside environment /opt/certbot
    Can't uninstall 'setuptools'. No files were found to uninstall.
  Attempting uninstall: pip
    Found existing installation: pip 25.1.1
    Not uninstalling pip at /usr/lib/python3/dist-packages, outside environment /opt/certbot
    Can't uninstall 'pip'. No files were found to uninstall.
Successfully installed pip-25.3 setuptools-80.9.0
Requirement already satisfied: certbot in /usr/lib/python3/dist-packages (4.0.0)
Collecting certbot
  Downloading certbot-5.2.2-py3-none-any.whl.metadata (7.0 kB)
Requirement already satisfied: certbot-dns-cloudflare in /usr/lib/python3/dist-packages (4.0.0)
Collecting certbot-dns-cloudflare
  Downloading certbot_dns_cloudflare-5.2.2-py3-none-any.whl.metadata (1.5 kB)
Collecting acme>=5.2.2 (from certbot)
  Downloading acme-5.2.2-py3-none-any.whl.metadata (1.3 kB)
Requirement already satisfied: ConfigArgParse>=1.5.3 in /usr/lib/python3/dist-packages (from certbot) (1.7)
Requirement already satisfied: configobj>=5.0.6 in /usr/lib/python3/dist-packages (from certbot) (5.0.9)
Requirement already satisfied: cryptography>=43.0.0 in /usr/lib/python3/dist-packages (from certbot) (43.0.0)
Requirement already satisfied: distro>=1.0.1 in /usr/lib/python3/dist-packages (from certbot) (1.9.0)
Requirement already satisfied: josepy>=2.0.0 in /usr/lib/python3/dist-packages (from certbot) (2.0.0)
Requirement already satisfied: parsedatetime>=2.6 in /usr/lib/python3/dist-packages (from certbot) (2.6)
Requirement already satisfied: pyrfc3339 in /usr/lib/python3/dist-packages (from certbot) (2.0.1)
Requirement already satisfied: cloudflare<2.20,>=2.19 in /opt/certbot/lib/python3.13/site-packages (from certbot-dns-cloudflare) (2.19.4)
Requirement already satisfied: requests in /usr/lib/python3/dist-packages (from cloudflare<2.20,>=2.19->certbot-dns-cloudflare) (2.32.3)
Requirement already satisfied: pyyaml in /usr/lib/python3/dist-packages (from cloudflare<2.20,>=2.19->certbot-dns-cloudflare) (6.0.2)
Requirement already satisfied: jsonlines in /opt/certbot/lib/python3.13/site-packages (from cloudflare<2.20,>=2.19->certbot-dns-cloudflare) (4.0.0)
Requirement already satisfied: PyOpenSSL>=25.0.0 in /usr/lib/python3/dist-packages (from acme>=5.2.2->certbot) (25.0.0)
Requirement already satisfied: charset_normalizer<4,>=2 in /usr/lib/python3/dist-packages (from requests->cloudflare<2.20,>=2.19->certbot-dns-cloudflare) (3.4.2)
Requirement already satisfied: idna<4,>=2.5 in /usr/lib/python3/dist-packages (from requests->cloudflare<2.20,>=2.19->certbot-dns-cloudflare) (3.10)
Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/lib/python3/dist-packages (from requests->cloudflare<2.20,>=2.19->certbot-dns-cloudflare) (2.3.0)
Requirement already satisfied: certifi>=2017.4.17 in /usr/lib/python3/dist-packages (from requests->cloudflare<2.20,>=2.19->certbot-dns-cloudflare) (2025.1.31)
Requirement already satisfied: attrs>=19.2.0 in /opt/certbot/lib/python3.13/site-packages (from jsonlines->cloudflare<2.20,>=2.19->certbot-dns-cloudflare) (25.4.0)
Downloading certbot-5.2.2-py3-none-any.whl (411 kB)
Downloading certbot_dns_cloudflare-5.2.2-py3-none-any.whl (14 kB)
Downloading acme-5.2.2-py3-none-any.whl (94 kB)
Installing collected packages: acme, certbot, certbot-dns-cloudflare
  Attempting uninstall: acme
    Found existing installation: acme 4.0.0
    Not uninstalling acme at /usr/lib/python3/dist-packages, outside environment /opt/certbot
    Can't uninstall 'acme'. No files were found to uninstall.
  Attempting uninstall: certbot
    Found existing installation: certbot 4.0.0
    Not uninstalling certbot at /usr/lib/python3/dist-packages, outside environment /opt/certbot
    Can't uninstall 'certbot'. No files were found to uninstall.
  Attempting uninstall: certbot-dns-cloudflare
    Found existing installation: certbot-dns-cloudflare 4.0.0
    Not uninstalling certbot-dns-cloudflare at /usr/lib/python3/dist-packages, outside environment /opt/certbot
    Can't uninstall 'certbot-dns-cloudflare'. No files were found to uninstall.
Successfully installed acme-5.2.2 certbot-5.2.2 certbot-dns-cloudflare-5.2.2
  ✔️   Updated Certbot
  ✖️   in line 177: exit code 1 (General error / Operation not permitted): while executing command systemctl enable -q --now openresty

🖼️ Additional context (optional).

Current NPM version: v2.12.3

Originally created by @bwhybrow23 on GitHub (Dec 18, 2025). ### ✅ Have you read and understood the above guidelines? yes ### 🔎 Did you run the script with verbose mode enabled? Yes, verbose mode was enabled and the output is included below ### 📜 What is the name of the script you are using? Nginx Proxy Manager ### 📂 What was the exact command used to execute the script? update ### ⚙️ What settings are you using? - [x] Default Settings - [ ] Advanced Settings ### 🖥️ Which Linux distribution are you using? Debian 13 ### 📈 Which Proxmox version are you on? pve-manager/8.4.14/b502d23c55afcba1 (running kernel: 6.8.12-15-pve) ### 📝 Provide a clear and concise description of the issue. Tried to run update through the existing console for Nginx Proxy Manager (which was installed using a script) and it has failed. I did also try running the install command from the website again as I know this is an alternative to update `bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/nginxproxymanager.sh)"` and this also failed with the same error as below. ### 🔄 Steps to reproduce the issue. Step 1: Run `update` in the console for the container Step 2: Select verbose mode Step 3: Error ### ❌ Paste the full error output (if available). ``` _ __ _ ____ __ ___ / | / /___ _(_)___ _ __ / __ \_________ _ ____ __ / |/ /___ _____ ____ _____ ____ _____ / |/ / __ `/ / __ \| |/_/ / /_/ / ___/ __ \| |/_/ / / / / /|_/ / __ `/ __ \/ __ `/ __ `/ _ \/ ___/ / /| / /_/ / / / / /> < / ____/ / / /_/ /> </ /_/ / / / / / /_/ / / / / /_/ / /_/ / __/ / /_/ |_/\__, /_/_/ /_/_/|_| /_/ /_/ \____/_/|_|\__, / /_/ /_/\__,_/_/ /_/\__,_/\__, /\___/_/ /____/ /____/ /____/ Hit:1 http://security.debian.org trixie-security InRelease Hit:2 http://deb.debian.org/debian trixie InRelease Hit:3 http://deb.debian.org/debian trixie-updates InRelease Hit:4 http://openresty.org/package/debian bullseye InRelease Hit:5 https://deb.nodesource.com/node_22.x nodistro InRelease Hit:6 https://pkg.cloudflare.com/cloudflared any InRelease All packages are up to date. Warning: http://openresty.org/package/debian/dists/bullseye/InRelease: Policy will reject signature within a year, see --audit for details Warning: https://deb.nodesource.com/node_22.x/dists/nodistro/InRelease: Policy will reject signature within a year, see --audit for details Warning: https://pkg.cloudflare.com/cloudflared/dists/any/InRelease: Policy will reject signature within a year, see --audit for details Notice: Missing Signed-By in the sources.list(5) entry for 'http://openresty.org/package/debian' changed 10 packages in 2s 16 packages are looking for funding run `npm fund` for details ✔️ Update Node.js 22 ⏳ Updating yarn to latest version changed 1 package in 597ms ✔️ Installed Node.js modules: yarn ✔️ Deployed: nginxproxymanager (2.13.4) ✔️ Stopped Services ✔️ Cleaned old files ✔️ Set up Environment yarn install v1.22.22 [1/4] Resolving packages... [2/4] Fetching packages... [3/4] Linking dependencies... warning " > @uiw/react-textarea-code-editor@3.1.1" has unmet peer dependency "@babel/runtime@>=7.10.0". [4/4] Building fresh packages... Done in 68.56s. yarn run v1.22.22 $ tsc && vite build vite v7.1.12 building for production... ✓ 7794 modules transformed. dist/index.html 1.34 kB │ gzip: 0.61 kB dist/assets/index-YJRSYeqY.css 0.10 kB │ gzip: 0.11 kB dist/assets/index-BJF_4ZT_.css 543.36 kB │ gzip: 70.10 kB dist/assets/CertificateFormatter-CeqeR-SL.js 0.22 kB │ gzip: 0.19 kB dist/assets/TrueFalseFormatter-C3L3QbV5.js 0.33 kB │ gzip: 0.24 kB dist/assets/IconPower-DvX5xW9v.js 0.37 kB │ gzip: 0.28 kB dist/assets/ValueWithDateFormatter-UOUBvOrH.js 0.44 kB │ gzip: 0.27 kB dist/assets/IconHelp-DCXFz_vg.js 0.46 kB │ gzip: 0.31 kB dist/assets/IconEdit-B3gE3SR-.js 0.50 kB │ gzip: 0.33 kB dist/assets/DomainsFormatter-BoT6f4EV.js 0.86 kB │ gzip: 0.50 kB dist/assets/index-CJVrB2pr.js 1.82 kB │ gzip: 0.95 kB dist/assets/IconTrash-TCFydYjJ.js 2.05 kB │ gzip: 0.79 kB dist/assets/index-BOuY2Obz.js 2.45 kB │ gzip: 1.04 kB dist/assets/index-CVmlp5_H.js 3.01 kB │ gzip: 0.73 kB dist/assets/index-Mci0g5fc.js 3.42 kB │ gzip: 1.21 kB dist/assets/index-Y1J-CR08.js 4.71 kB │ gzip: 1.75 kB dist/assets/index-CDWGX8hA.js 5.26 kB │ gzip: 2.00 kB dist/assets/index-D4U_aIgG.js 5.80 kB │ gzip: 2.13 kB dist/assets/index-Ce2DwVNF.js 5.83 kB │ gzip: 2.09 kB dist/assets/index-DkNXx0EH.js 5.88 kB │ gzip: 2.15 kB dist/assets/index-C4jgmLMW.js 6.75 kB │ gzip: 2.49 kB dist/assets/index-wDV9ExCs.js 7.14 kB │ gzip: 1.90 kB dist/assets/index-xTK1dRzL.js 40.85 kB │ gzip: 14.69 kB dist/assets/TableLayout-Bh3My8k1.js 50.49 kB │ gzip: 13.68 kB dist/assets/index-gIHubYKY.js 2,050.03 kB │ gzip: 644.92 kB (!) Some chunks are larger than 500 kB after minification. Consider: - Using dynamic import() to code-split the application - Use build.rollupOptions.output.manualChunks to improve chunking: https://rollupjs.org/configuration-options/#output-manualchunks - Adjust chunk size limit for this warning via build.chunkSizeWarningLimit. ✓ built in 17.16s Done in 26.07s. ✔️ Built Frontend yarn install v1.22.22 [1/4] Resolving packages... [2/4] Fetching packages... warning lru.min@1.1.2: The engine "bun" appears to be invalid. warning lru.min@1.1.2: The engine "deno" appears to be invalid. [3/4] Linking dependencies... warning " > @apidevtools/swagger-parser@10.1.1" has unmet peer dependency "openapi-types@>=7". [4/4] Building fresh packages... Done in 8.18s. ✔️ Initialized Backend Hit:1 http://openresty.org/package/debian bullseye InRelease Hit:2 http://deb.debian.org/debian trixie InRelease Hit:3 http://security.debian.org trixie-security InRelease Hit:4 http://deb.debian.org/debian trixie-updates InRelease Hit:5 https://deb.nodesource.com/node_22.x nodistro InRelease Hit:6 https://pkg.cloudflare.com/cloudflared any InRelease All packages are up to date. Warning: http://openresty.org/package/debian/dists/bullseye/InRelease: Policy will reject signature within a year, see --audit for details Warning: https://deb.nodesource.com/node_22.x/dists/nodistro/InRelease: Policy will reject signature within a year, see --audit for details Warning: https://pkg.cloudflare.com/cloudflared/dists/any/InRelease: Policy will reject signature within a year, see --audit for details Notice: Missing Signed-By in the sources.list(5) entry for 'http://openresty.org/package/debian' openresty is already the newest version (1.27.1.2-1~bullseye1). Summary: Upgrading: 0, Installing: 0, Removing: 0, Not Upgrading: 0 Requirement already satisfied: pip in /usr/lib/python3/dist-packages (25.1.1) Collecting pip Downloading pip-25.3-py3-none-any.whl.metadata (4.7 kB) Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (78.1.1) Collecting setuptools Downloading setuptools-80.9.0-py3-none-any.whl.metadata (6.6 kB) Requirement already satisfied: wheel in /usr/lib/python3/dist-packages (0.46.1) Requirement already satisfied: packaging>=24.0 in /usr/lib/python3/dist-packages (from wheel) (25.0) Downloading pip-25.3-py3-none-any.whl (1.8 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 3.6 MB/s eta 0:00:00 Downloading setuptools-80.9.0-py3-none-any.whl (1.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 5.7 MB/s eta 0:00:00 Installing collected packages: setuptools, pip Attempting uninstall: setuptools Found existing installation: setuptools 78.1.1 Not uninstalling setuptools at /usr/lib/python3/dist-packages, outside environment /opt/certbot Can't uninstall 'setuptools'. No files were found to uninstall. Attempting uninstall: pip Found existing installation: pip 25.1.1 Not uninstalling pip at /usr/lib/python3/dist-packages, outside environment /opt/certbot Can't uninstall 'pip'. No files were found to uninstall. Successfully installed pip-25.3 setuptools-80.9.0 Requirement already satisfied: certbot in /usr/lib/python3/dist-packages (4.0.0) Collecting certbot Downloading certbot-5.2.2-py3-none-any.whl.metadata (7.0 kB) Requirement already satisfied: certbot-dns-cloudflare in /usr/lib/python3/dist-packages (4.0.0) Collecting certbot-dns-cloudflare Downloading certbot_dns_cloudflare-5.2.2-py3-none-any.whl.metadata (1.5 kB) Collecting acme>=5.2.2 (from certbot) Downloading acme-5.2.2-py3-none-any.whl.metadata (1.3 kB) Requirement already satisfied: ConfigArgParse>=1.5.3 in /usr/lib/python3/dist-packages (from certbot) (1.7) Requirement already satisfied: configobj>=5.0.6 in /usr/lib/python3/dist-packages (from certbot) (5.0.9) Requirement already satisfied: cryptography>=43.0.0 in /usr/lib/python3/dist-packages (from certbot) (43.0.0) Requirement already satisfied: distro>=1.0.1 in /usr/lib/python3/dist-packages (from certbot) (1.9.0) Requirement already satisfied: josepy>=2.0.0 in /usr/lib/python3/dist-packages (from certbot) (2.0.0) Requirement already satisfied: parsedatetime>=2.6 in /usr/lib/python3/dist-packages (from certbot) (2.6) Requirement already satisfied: pyrfc3339 in /usr/lib/python3/dist-packages (from certbot) (2.0.1) Requirement already satisfied: cloudflare<2.20,>=2.19 in /opt/certbot/lib/python3.13/site-packages (from certbot-dns-cloudflare) (2.19.4) Requirement already satisfied: requests in /usr/lib/python3/dist-packages (from cloudflare<2.20,>=2.19->certbot-dns-cloudflare) (2.32.3) Requirement already satisfied: pyyaml in /usr/lib/python3/dist-packages (from cloudflare<2.20,>=2.19->certbot-dns-cloudflare) (6.0.2) Requirement already satisfied: jsonlines in /opt/certbot/lib/python3.13/site-packages (from cloudflare<2.20,>=2.19->certbot-dns-cloudflare) (4.0.0) Requirement already satisfied: PyOpenSSL>=25.0.0 in /usr/lib/python3/dist-packages (from acme>=5.2.2->certbot) (25.0.0) Requirement already satisfied: charset_normalizer<4,>=2 in /usr/lib/python3/dist-packages (from requests->cloudflare<2.20,>=2.19->certbot-dns-cloudflare) (3.4.2) Requirement already satisfied: idna<4,>=2.5 in /usr/lib/python3/dist-packages (from requests->cloudflare<2.20,>=2.19->certbot-dns-cloudflare) (3.10) Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/lib/python3/dist-packages (from requests->cloudflare<2.20,>=2.19->certbot-dns-cloudflare) (2.3.0) Requirement already satisfied: certifi>=2017.4.17 in /usr/lib/python3/dist-packages (from requests->cloudflare<2.20,>=2.19->certbot-dns-cloudflare) (2025.1.31) Requirement already satisfied: attrs>=19.2.0 in /opt/certbot/lib/python3.13/site-packages (from jsonlines->cloudflare<2.20,>=2.19->certbot-dns-cloudflare) (25.4.0) Downloading certbot-5.2.2-py3-none-any.whl (411 kB) Downloading certbot_dns_cloudflare-5.2.2-py3-none-any.whl (14 kB) Downloading acme-5.2.2-py3-none-any.whl (94 kB) Installing collected packages: acme, certbot, certbot-dns-cloudflare Attempting uninstall: acme Found existing installation: acme 4.0.0 Not uninstalling acme at /usr/lib/python3/dist-packages, outside environment /opt/certbot Can't uninstall 'acme'. No files were found to uninstall. Attempting uninstall: certbot Found existing installation: certbot 4.0.0 Not uninstalling certbot at /usr/lib/python3/dist-packages, outside environment /opt/certbot Can't uninstall 'certbot'. No files were found to uninstall. Attempting uninstall: certbot-dns-cloudflare Found existing installation: certbot-dns-cloudflare 4.0.0 Not uninstalling certbot-dns-cloudflare at /usr/lib/python3/dist-packages, outside environment /opt/certbot Can't uninstall 'certbot-dns-cloudflare'. No files were found to uninstall. Successfully installed acme-5.2.2 certbot-5.2.2 certbot-dns-cloudflare-5.2.2 ✔️ Updated Certbot ✖️ in line 177: exit code 1 (General error / Operation not permitted): while executing command systemctl enable -q --now openresty ``` ### 🖼️ Additional context (optional). Current NPM version: v2.12.3
OVERLORD added the bug label 2026-02-05 04:09:11 +03:00
Author
Owner

@MickLesk commented on GitHub (Dec 19, 2025):

Whats your OS? Look too old

@MickLesk commented on GitHub (Dec 19, 2025): Whats your OS? Look too old
Author
Owner

@bwhybrow23 commented on GitHub (Dec 19, 2025):

Whats your OS? Look too old

I'm on Debian 13:

root@nginxproxymanager:~# uname -r 
6.8.12-15-pve
root@nginxproxymanager:~# cat /etc/os-release 
PRETTY_NAME="Debian GNU/Linux 13 (trixie)"
NAME="Debian GNU/Linux"
VERSION_ID="13"
VERSION="13 (trixie)"
VERSION_CODENAME=trixie
DEBIAN_VERSION_FULL=13.2
ID=debian
@bwhybrow23 commented on GitHub (Dec 19, 2025): > Whats your OS? Look too old I'm on Debian 13: ``` root@nginxproxymanager:~# uname -r 6.8.12-15-pve root@nginxproxymanager:~# cat /etc/os-release PRETTY_NAME="Debian GNU/Linux 13 (trixie)" NAME="Debian GNU/Linux" VERSION_ID="13" VERSION="13 (trixie)" VERSION_CODENAME=trixie DEBIAN_VERSION_FULL=13.2 ID=debian ```
Author
Owner

@MickLesk commented on GitHub (Dec 19, 2025):

Your openresty is outdated?

We Install since months the bookworm. Update per se is done. Only openresty doesnt start.

curl -fsSL "https://openresty.org/package/pubkey.gpg" | gpg --dearmor -o /etc/apt/trusted.gpg.d/openresty.gpg
cat <<'EOF' >/etc/apt/sources.list.d/openresty.sources
Types: deb
URIs: http://openresty.org/package/debian/
Suites: bookworm
Components: openresty
Signed-By: /etc/apt/trusted.gpg.d/openresty.gpg
EOF
apt update
apt -y install openresty
systemctl enable --now openresty
@MickLesk commented on GitHub (Dec 19, 2025): Your openresty is outdated? We Install since months the bookworm. Update per se is done. Only openresty doesnt start. ``` curl -fsSL "https://openresty.org/package/pubkey.gpg" | gpg --dearmor -o /etc/apt/trusted.gpg.d/openresty.gpg cat <<'EOF' >/etc/apt/sources.list.d/openresty.sources Types: deb URIs: http://openresty.org/package/debian/ Suites: bookworm Components: openresty Signed-By: /etc/apt/trusted.gpg.d/openresty.gpg EOF apt update apt -y install openresty systemctl enable --now openresty ```
Author
Owner

@bwhybrow23 commented on GitHub (Dec 19, 2025):

Okay, so it turns out that openresty was up to date. What the issue was is that I deleted an SSL certificate from NPM without unreferencing it from the proxies so then it caused openresty to error and give up. I had to look at the journalctl to figure that out. All resolved!

@bwhybrow23 commented on GitHub (Dec 19, 2025): Okay, so it turns out that openresty was up to date. What the issue was is that I deleted an SSL certificate from NPM without unreferencing it from the proxies so then it caused openresty to error and give up. I had to look at the journalctl to figure that out. All resolved!
Author
Owner

@MickLesk commented on GitHub (Dec 19, 2025):

Good 👍

But If you have the time. Update the openresty repo to bookworm (because its bullseye) to stay Up2date

@MickLesk commented on GitHub (Dec 19, 2025): Good 👍 But If you have the time. Update the openresty repo to bookworm (because its bullseye) to stay Up2date
Author
Owner

@jonny190 commented on GitHub (Jan 6, 2026):

Okay, so it turns out that openresty was up to date. What the issue was is that I deleted an SSL certificate from NPM without unreferencing it from the proxies so then it caused openresty to error and give up. I had to look at the journalctl to figure that out. All resolved!

How did you work this out as i'm in the same boat?

@jonny190 commented on GitHub (Jan 6, 2026): > Okay, so it turns out that openresty was up to date. What the issue was is that I deleted an SSL certificate from NPM without unreferencing it from the proxies so then it caused openresty to error and give up. I had to look at the journalctl to figure that out. All resolved! How did you work this out as i'm in the same boat?
Author
Owner

@bwhybrow23 commented on GitHub (Jan 6, 2026):

Okay, so it turns out that openresty was up to date. What the issue was is that I deleted an SSL certificate from NPM without unreferencing it from the proxies so then it caused openresty to error and give up. I had to look at the journalctl to figure that out. All resolved!

How did you work this out as i'm in the same boat?

Find out what cert is erroring

journalctl -xeu openresty

In my case, the error was nginxproxymanager nginx[4340]: nginx: [emerg] cannot load certificate "/etc/letsencrypt/live/npm-11/fullchain.pem": BIO_new_file() failed (SSL: error:80000002:system library::No such file or directory:calling...

Make note of the directory as it'll be used to fix.

Fix Instructions:

  1. Make the directory if not already existed
sudo mkdir -p /etc/letsencrypt/live/npm-11
  1. Generate an "SSL certificate" (enough to convince OpenResty it exists)
sudo openssl req -x509 -nodes -newkey rsa:2048 -days 2   -keyout /etc/letsencrypt/live/npm-11/privkey.pem   -out /etc/letsencrypt/live/npm-11/fullchain.pem   -subj "/CN=TEMP-NPM-RECOVERY"
  1. Check NGINX accepts it
sudo nginx -t
  1. Restart openresty & NGINX
sudo systemctl restart openresty && sudo systemctl restart nginx
  1. Run the update using the bash install command (not update):
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/nginxproxymanager.sh)"
  1. NPM will now load so you can open it and fix the SSL references in the virtual proxies.
@bwhybrow23 commented on GitHub (Jan 6, 2026): > > Okay, so it turns out that openresty was up to date. What the issue was is that I deleted an SSL certificate from NPM without unreferencing it from the proxies so then it caused openresty to error and give up. I had to look at the journalctl to figure that out. All resolved! > > How did you work this out as i'm in the same boat? Find out what cert is erroring ``` journalctl -xeu openresty ``` In my case, the error was `nginxproxymanager nginx[4340]: nginx: [emerg] cannot load certificate "/etc/letsencrypt/live/npm-11/fullchain.pem": BIO_new_file() failed (SSL: error:80000002:system library::No such file or directory:calling...` Make note of the directory as it'll be used to fix. Fix Instructions: 1. Make the directory if not already existed ``` sudo mkdir -p /etc/letsencrypt/live/npm-11 ``` 2. Generate an "SSL certificate" (enough to convince OpenResty it exists) ``` sudo openssl req -x509 -nodes -newkey rsa:2048 -days 2 -keyout /etc/letsencrypt/live/npm-11/privkey.pem -out /etc/letsencrypt/live/npm-11/fullchain.pem -subj "/CN=TEMP-NPM-RECOVERY" ``` 3. Check NGINX accepts it ``` sudo nginx -t ``` 4. Restart openresty & NGINX ``` sudo systemctl restart openresty && sudo systemctl restart nginx ``` 5. Run the update using the bash install command (not `update`): ``` bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/nginxproxymanager.sh)" ``` 6. NPM will now load so you can open it and fix the SSL references in the virtual proxies.
Author
Owner

@jonny190 commented on GitHub (Jan 6, 2026):

Looks like i'm in a different world of pain

░░ The job identifier is 101.
Jan 06 17:49:25 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use)
Jan 06 17:49:25 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use)
Jan 06 17:49:25 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use)
Jan 06 17:49:25 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use)
Jan 06 17:49:26 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use)
Jan 06 17:49:26 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use)
Jan 06 17:49:26 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use)
Jan 06 17:49:26 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use)
Jan 06 17:49:27 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use)
Jan 06 17:49:27 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use)
Jan 06 17:49:27 nginxproxymanager nginx[164]: nginx: [emerg] still could not bind()
Jan 06 17:49:27 nginxproxymanager systemd[1]: openresty.service: Control process exited, code=exited, status=1/FAILURE
░░ Subject: Unit process exited
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░ 
░░ An ExecStart= process belonging to unit openresty.service has exited.
░░ 
░░ The process' exit code is 'exited' and its exit status is 1.
Jan 06 17:49:27 nginxproxymanager systemd[1]: openresty.service: Failed with result 'exit-code'.
░░ Subject: Unit failed
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░ 
░░ The unit openresty.service has entered the 'failed' state with result 'exit-code'.
Jan 06 17:49:27 nginxproxymanager systemd[1]: Failed to start openresty.service - The OpenResty Application Platform.
@jonny190 commented on GitHub (Jan 6, 2026): Looks like i'm in a different world of pain ``` ░░ The job identifier is 101. Jan 06 17:49:25 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use) Jan 06 17:49:25 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use) Jan 06 17:49:25 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use) Jan 06 17:49:25 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use) Jan 06 17:49:26 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use) Jan 06 17:49:26 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use) Jan 06 17:49:26 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use) Jan 06 17:49:26 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use) Jan 06 17:49:27 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use) Jan 06 17:49:27 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use) Jan 06 17:49:27 nginxproxymanager nginx[164]: nginx: [emerg] still could not bind() Jan 06 17:49:27 nginxproxymanager systemd[1]: openresty.service: Control process exited, code=exited, status=1/FAILURE ░░ Subject: Unit process exited ░░ Defined-By: systemd ░░ Support: https://www.debian.org/support ░░ ░░ An ExecStart= process belonging to unit openresty.service has exited. ░░ ░░ The process' exit code is 'exited' and its exit status is 1. Jan 06 17:49:27 nginxproxymanager systemd[1]: openresty.service: Failed with result 'exit-code'. ░░ Subject: Unit failed ░░ Defined-By: systemd ░░ Support: https://www.debian.org/support ░░ ░░ The unit openresty.service has entered the 'failed' state with result 'exit-code'. Jan 06 17:49:27 nginxproxymanager systemd[1]: Failed to start openresty.service - The OpenResty Application Platform. ```
Author
Owner

@bwhybrow23 commented on GitHub (Jan 7, 2026):

Looks like i'm in a different world of pain

░░ The job identifier is 101.
Jan 06 17:49:25 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use)
Jan 06 17:49:25 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use)
Jan 06 17:49:25 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use)
Jan 06 17:49:25 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use)
Jan 06 17:49:26 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use)
Jan 06 17:49:26 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use)
Jan 06 17:49:26 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use)
Jan 06 17:49:26 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use)
Jan 06 17:49:27 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use)
Jan 06 17:49:27 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use)
Jan 06 17:49:27 nginxproxymanager nginx[164]: nginx: [emerg] still could not bind()
Jan 06 17:49:27 nginxproxymanager systemd[1]: openresty.service: Control process exited, code=exited, status=1/FAILURE
░░ Subject: Unit process exited
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░ 
░░ An ExecStart= process belonging to unit openresty.service has exited.
░░ 
░░ The process' exit code is 'exited' and its exit status is 1.
Jan 06 17:49:27 nginxproxymanager systemd[1]: openresty.service: Failed with result 'exit-code'.
░░ Subject: Unit failed
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░ 
░░ The unit openresty.service has entered the 'failed' state with result 'exit-code'.
Jan 06 17:49:27 nginxproxymanager systemd[1]: Failed to start openresty.service - The OpenResty Application Platform.

Port 22 is the SSH port, so I'm not sure why it's trying to bind to that. Go through each config in both /etc/nginx/sites-enabled and /etc/nginx/conf.d and see if any of them mention port 22 on the line that starts with listen.

@bwhybrow23 commented on GitHub (Jan 7, 2026): > Looks like i'm in a different world of pain > > ``` > ░░ The job identifier is 101. > Jan 06 17:49:25 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use) > Jan 06 17:49:25 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use) > Jan 06 17:49:25 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use) > Jan 06 17:49:25 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use) > Jan 06 17:49:26 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use) > Jan 06 17:49:26 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use) > Jan 06 17:49:26 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use) > Jan 06 17:49:26 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use) > Jan 06 17:49:27 nginxproxymanager nginx[164]: nginx: [emerg] bind() to 0.0.0.0:22 failed (98: Address already in use) > Jan 06 17:49:27 nginxproxymanager nginx[164]: nginx: [emerg] bind() to [::]:22 failed (98: Address already in use) > Jan 06 17:49:27 nginxproxymanager nginx[164]: nginx: [emerg] still could not bind() > Jan 06 17:49:27 nginxproxymanager systemd[1]: openresty.service: Control process exited, code=exited, status=1/FAILURE > ░░ Subject: Unit process exited > ░░ Defined-By: systemd > ░░ Support: https://www.debian.org/support > ░░ > ░░ An ExecStart= process belonging to unit openresty.service has exited. > ░░ > ░░ The process' exit code is 'exited' and its exit status is 1. > Jan 06 17:49:27 nginxproxymanager systemd[1]: openresty.service: Failed with result 'exit-code'. > ░░ Subject: Unit failed > ░░ Defined-By: systemd > ░░ Support: https://www.debian.org/support > ░░ > ░░ The unit openresty.service has entered the 'failed' state with result 'exit-code'. > Jan 06 17:49:27 nginxproxymanager systemd[1]: Failed to start openresty.service - The OpenResty Application Platform. > ``` Port 22 is the SSH port, so I'm not sure why it's trying to bind to that. Go through each config in both `/etc/nginx/sites-enabled` and `/etc/nginx/conf.d` and see if any of them mention port 22 on the line that starts with `listen`.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/ProxmoxVE#2191