[GH-ISSUE #4408] Building wheel for certbot-dns-multi (pyproject.toml) did not run successfully. #2823

Open
opened 2026-02-26 07:36:54 +03:00 by kerem · 8 comments
Owner

Originally created by @Dennis864 on GitHub (Mar 2, 2025).
Original GitHub issue: https://github.com/NginxProxyManager/nginx-proxy-manager/issues/4408

Checklist

  • Have you pulled and found the error with jc21/nginx-proxy-manager:latest docker image?
    • Yes
  • Are you sure you're not using someone else's docker image?
    • Yes
  • Have you searched for similar issues (both open and closed)?
    • Yes

Describe the bug
Starting nginx proxy manager on my debian running in docker works fine. Has 10 proxy host and 1 certificate requested via DNSMulti ipv64.
When i try to copy my complete configuration files to my raspberry pi, also running it in docker i get an error during start which seems to be related to the DNSMulti configuration of the certificate. Starting blank works fine, but with my configuration copied i get the following error during start. The same applies when requesting a new certificate right after a fresh start of the container without configuration.

Log:
nginxproxymanager-app-1 | [3/2/2025] [12:45:57 AM] [Certbot ] › ▶ start Installing dnsmulti...
nginxproxymanager-app-1 | [3/2/2025] [12:45:57 AM] [Global ] › ⬤ debug CMD: . /opt/certbot/bin/activate && pip install --no-cache-dir certbot-dns-multi~=4.9 && deactivate
nginxproxymanager-app-1 | [3/2/2025] [12:46:08 AM] [Certbot ] › ✖ error error: subprocess-exited-with-error
nginxproxymanager-app-1 |
nginxproxymanager-app-1 | × Building wheel for certbot-dns-multi (pyproject.toml) did not run successfully.
nginxproxymanager-app-1 | │ exit code: 1
nginxproxymanager-app-1 | ╰─> [27 lines of output]
nginxproxymanager-app-1 | running bdist_wheel
nginxproxymanager-app-1 | running build
nginxproxymanager-app-1 | running build_py
nginxproxymanager-app-1 | creating build/lib.linux-aarch64-cpython-311/certbot_dns_multi
nginxproxymanager-app-1 | copying certbot_dns_multi/_version.py -> build/lib.linux-aarch64-cpython-311/certbot_dns_multi
nginxproxymanager-app-1 | copying certbot_dns_multi/init.py -> build/lib.linux-aarch64-cpython-311/certbot_dns_multi
nginxproxymanager-app-1 | creating build/lib.linux-aarch64-cpython-311/certbot_dns_multi/_internal
nginxproxymanager-app-1 | copying certbot_dns_multi/_internal/dns_multi.py -> build/lib.linux-aarch64-cpython-311/certbot_dns_multi/_internal
nginxproxymanager-app-1 | running egg_info
nginxproxymanager-app-1 | writing certbot_dns_multi.egg-info/PKG-INFO
nginxproxymanager-app-1 | writing dependency_links to certbot_dns_multi.egg-info/dependency_links.txt
nginxproxymanager-app-1 | writing entry points to certbot_dns_multi.egg-info/entry_points.txt
nginxproxymanager-app-1 | writing requirements to certbot_dns_multi.egg-info/requires.txt
nginxproxymanager-app-1 | writing top-level names to certbot_dns_multi.egg-info/top_level.txt
nginxproxymanager-app-1 | ERROR setuptools_scm._file_finders.git listing git files failed - pretending there aren't any
nginxproxymanager-app-1 | reading manifest file 'certbot_dns_multi.egg-info/SOURCES.txt'
nginxproxymanager-app-1 | reading manifest template 'MANIFEST.in'
nginxproxymanager-app-1 | adding license file 'LICENSE.txt'
nginxproxymanager-app-1 | writing manifest file 'certbot_dns_multi.egg-info/SOURCES.txt'
nginxproxymanager-app-1 | creating build/lib.linux-aarch64-cpython-311/certbot_dns_multi/_internal/bridge
nginxproxymanager-app-1 | copying certbot_dns_multi/_internal/bridge/go.mod -> build/lib.linux-aarch64-cpython-311/certbot_dns_multi/_internal/bridge
nginxproxymanager-app-1 | copying certbot_dns_multi/_internal/bridge/go.sum -> build/lib.linux-aarch64-cpython-311/certbot_dns_multi/_internal/bridge
nginxproxymanager-app-1 | copying certbot_dns_multi/_internal/bridge/main.c -> build/lib.linux-aarch64-cpython-311/certbot_dns_multi/_internal/bridge
nginxproxymanager-app-1 | copying certbot_dns_multi/_internal/bridge/main.go -> build/lib.linux-aarch64-cpython-311/certbot_dns_multi/_internal/bridge
nginxproxymanager-app-1 | running build_ext
nginxproxymanager-app-1 | $ GOPATH=/tmp/tmphqs553fi go get -d
nginxproxymanager-app-1 | error: [Errno 2] No such file or directory: 'go'
nginxproxymanager-app-1 | [end of output]
nginxproxymanager-app-1 |
nginxproxymanager-app-1 | note: This error originates from a subprocess, and is likely not a problem with pip.
nginxproxymanager-app-1 | ERROR: Failed building wheel for certbot-dns-multi
nginxproxymanager-app-1 |

nginxproxymanager-app-1 | [notice] A new release of pip is available: 24.3.1 -> 25.0.1
nginxproxymanager-app-1 | [notice] To update, run: pip install --upgrade pip
nginxproxymanager-app-1 | ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (certbot-dns-multi)
nginxproxymanager-app-1 |
nginxproxymanager-app-1 | [3/2/2025] [12:46:08 AM] [Global ] › ✖ error Some plugins failed to install. Please check the logs above CommandError: Some plugins failed to install. Please check the logs above
nginxproxymanager-app-1 | at /app/lib/certbot.js:39:14
nginxproxymanager-app-1 | at Immediate. (/app/node_modules/batchflow/lib/batchflow.js:80:9)
nginxproxymanager-app-1 | at process.processImmediate (node:internal/timers:483:21) {
nginxproxymanager-app-1 | previous: undefined,
nginxproxymanager-app-1 | code: 1,
nginxproxymanager-app-1 | public: false
nginxproxymanager-app-1 | }
nginxproxymanager-app-1 | [3/2/2025] [12:46:09 AM] [Migrate ] › ℹ info Current database version: none
nginxproxymanager-app-1 | [3/2/2025] [12:46:09 AM] [Global ] › ⬤ debug CMD: [ -f '/etc/letsencrypt/credentials/credentials-1' ] || { mkdir -p /etc/letsencrypt/credentials 2> /dev/null; echo 'dns_multi_provider = ipv64

Nginx Proxy Manager Version
v2.12.3

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'SSL Certificates'
  2. Click on 'Add SSL Certificate'
  3. Click on 'Lets encrypt'
  4. Enter domain
  5. Click on 'Use a dns challenge'
  6. Choose 'DNSMulti' provider
  7. Use following config: 'https://go-acme.github.io/lego/dns/ipv64/index.html'
  8. Click on save

Expected behavior
Normal start without errors after copying my configuration or at least no problems when requesting a new one as described in "to reproduce".

Operating System
Raspberry pi 4, 4GB RAM, 64GB SD Card,

Raspberry Pi OS:
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"
VERSION_CODENAME=bookworm

Docker:
Client: Docker Engine - Community
Version: 28.0.1
API version: 1.48
Go version: go1.23.6
Git commit: 068a01e
Built: Wed Feb 26 10:40:57 2025
OS/Arch: linux/arm64
Context: default

Server: Docker Engine - Community
Engine:
Version: 28.0.1
API version: 1.48 (minimum version 1.24)
Go version: go1.23.6
Git commit: bbd0a17
Built: Wed Feb 26 10:40:57 2025
OS/Arch: linux/arm64
Experimental: false
containerd:
Version: 1.7.25
GitCommit: bcc810d6b9066471b0b6fa75f557a15a1cbf31bb
runc:
Version: 1.2.4
GitCommit: v1.2.4-0-g6c52b3f
docker-init:
Version: 0.19.0
GitCommit: de40ad0

Originally created by @Dennis864 on GitHub (Mar 2, 2025). Original GitHub issue: https://github.com/NginxProxyManager/nginx-proxy-manager/issues/4408 <!-- Are you in the right place? - If you are looking for support on how to get your upstream server forwarding, please consider asking the community on Reddit. - If you are writing code changes to contribute and need to ask about the internals of the software, Gitter is the best place to ask. - If you think you found a bug with NPM (not Nginx, or your upstream server or MySql) then you are in the *right place.* --> **Checklist** - Have you pulled and found the error with `jc21/nginx-proxy-manager:latest` docker image? - Yes - Are you sure you're not using someone else's docker image? - Yes - Have you searched for similar issues (both open and closed)? - Yes **Describe the bug** Starting nginx proxy manager on my debian running in docker works fine. Has 10 proxy host and 1 certificate requested via DNSMulti ipv64. When i try to copy my complete configuration files to my raspberry pi, also running it in docker i get an error during start which seems to be related to the DNSMulti configuration of the certificate. Starting blank works fine, but with my configuration copied i get the following error during start. The same applies when requesting a new certificate right after a fresh start of the container without configuration. Log: nginxproxymanager-app-1 | [3/2/2025] [12:45:57 AM] [Certbot ] › ▶ start Installing dnsmulti... nginxproxymanager-app-1 | [3/2/2025] [12:45:57 AM] [Global ] › ⬤ debug CMD: . /opt/certbot/bin/activate && pip install --no-cache-dir certbot-dns-multi~=4.9 && deactivate nginxproxymanager-app-1 | [3/2/2025] [12:46:08 AM] [Certbot ] › ✖ error error: subprocess-exited-with-error nginxproxymanager-app-1 | nginxproxymanager-app-1 | × Building wheel for certbot-dns-multi (pyproject.toml) did not run successfully. nginxproxymanager-app-1 | │ exit code: 1 nginxproxymanager-app-1 | ╰─> [27 lines of output] nginxproxymanager-app-1 | running bdist_wheel nginxproxymanager-app-1 | running build nginxproxymanager-app-1 | running build_py nginxproxymanager-app-1 | creating build/lib.linux-aarch64-cpython-311/certbot_dns_multi nginxproxymanager-app-1 | copying certbot_dns_multi/_version.py -> build/lib.linux-aarch64-cpython-311/certbot_dns_multi nginxproxymanager-app-1 | copying certbot_dns_multi/__init__.py -> build/lib.linux-aarch64-cpython-311/certbot_dns_multi nginxproxymanager-app-1 | creating build/lib.linux-aarch64-cpython-311/certbot_dns_multi/_internal nginxproxymanager-app-1 | copying certbot_dns_multi/_internal/dns_multi.py -> build/lib.linux-aarch64-cpython-311/certbot_dns_multi/_internal nginxproxymanager-app-1 | running egg_info nginxproxymanager-app-1 | writing certbot_dns_multi.egg-info/PKG-INFO nginxproxymanager-app-1 | writing dependency_links to certbot_dns_multi.egg-info/dependency_links.txt nginxproxymanager-app-1 | writing entry points to certbot_dns_multi.egg-info/entry_points.txt nginxproxymanager-app-1 | writing requirements to certbot_dns_multi.egg-info/requires.txt nginxproxymanager-app-1 | writing top-level names to certbot_dns_multi.egg-info/top_level.txt nginxproxymanager-app-1 | ERROR setuptools_scm._file_finders.git listing git files failed - pretending there aren't any nginxproxymanager-app-1 | reading manifest file 'certbot_dns_multi.egg-info/SOURCES.txt' nginxproxymanager-app-1 | reading manifest template 'MANIFEST.in' nginxproxymanager-app-1 | adding license file 'LICENSE.txt' nginxproxymanager-app-1 | writing manifest file 'certbot_dns_multi.egg-info/SOURCES.txt' nginxproxymanager-app-1 | creating build/lib.linux-aarch64-cpython-311/certbot_dns_multi/_internal/bridge nginxproxymanager-app-1 | copying certbot_dns_multi/_internal/bridge/go.mod -> build/lib.linux-aarch64-cpython-311/certbot_dns_multi/_internal/bridge nginxproxymanager-app-1 | copying certbot_dns_multi/_internal/bridge/go.sum -> build/lib.linux-aarch64-cpython-311/certbot_dns_multi/_internal/bridge nginxproxymanager-app-1 | copying certbot_dns_multi/_internal/bridge/main.c -> build/lib.linux-aarch64-cpython-311/certbot_dns_multi/_internal/bridge nginxproxymanager-app-1 | copying certbot_dns_multi/_internal/bridge/main.go -> build/lib.linux-aarch64-cpython-311/certbot_dns_multi/_internal/bridge nginxproxymanager-app-1 | running build_ext **nginxproxymanager-app-1 | $ GOPATH=/tmp/tmphqs553fi go get -d nginxproxymanager-app-1 | error: [Errno 2] No such file or directory: 'go' nginxproxymanager-app-1 | [end of output] nginxproxymanager-app-1 | nginxproxymanager-app-1 | note: This error originates from a subprocess, and is likely not a problem with pip. nginxproxymanager-app-1 | ERROR: Failed building wheel for certbot-dns-multi nginxproxymanager-app-1 |** nginxproxymanager-app-1 | [notice] A new release of pip is available: 24.3.1 -> 25.0.1 nginxproxymanager-app-1 | [notice] To update, run: pip install --upgrade pip nginxproxymanager-app-1 | ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (certbot-dns-multi) nginxproxymanager-app-1 | nginxproxymanager-app-1 | [3/2/2025] [12:46:08 AM] [Global ] › ✖ error Some plugins failed to install. Please check the logs above CommandError: Some plugins failed to install. Please check the logs above nginxproxymanager-app-1 | at /app/lib/certbot.js:39:14 nginxproxymanager-app-1 | at Immediate.<anonymous> (/app/node_modules/batchflow/lib/batchflow.js:80:9) nginxproxymanager-app-1 | at process.processImmediate (node:internal/timers:483:21) { nginxproxymanager-app-1 | previous: undefined, nginxproxymanager-app-1 | code: 1, nginxproxymanager-app-1 | public: false nginxproxymanager-app-1 | } nginxproxymanager-app-1 | [3/2/2025] [12:46:09 AM] [Migrate ] › ℹ info Current database version: none nginxproxymanager-app-1 | [3/2/2025] [12:46:09 AM] [Global ] › ⬤ debug CMD: [ -f '/etc/letsencrypt/credentials/credentials-1' ] || { mkdir -p /etc/letsencrypt/credentials 2> /dev/null; echo 'dns_multi_provider = ipv64 **Nginx Proxy Manager Version** v2.12.3 **To Reproduce** Steps to reproduce the behavior: 1. Go to 'SSL Certificates' 2. Click on 'Add SSL Certificate' 3. Click on 'Lets encrypt' 4. Enter domain 5. Click on 'Use a dns challenge' 6. Choose 'DNSMulti' provider 7. Use following config: 'https://go-acme.github.io/lego/dns/ipv64/index.html' 8. Click on save **Expected behavior** Normal start without errors after copying my configuration or at least no problems when requesting a new one as described in "to reproduce". **Operating System** Raspberry pi 4, 4GB RAM, 64GB SD Card, Raspberry Pi OS: PRETTY_NAME="Debian GNU/Linux 12 (bookworm)" NAME="Debian GNU/Linux" VERSION_ID="12" VERSION="12 (bookworm)" VERSION_CODENAME=bookworm Docker: Client: Docker Engine - Community Version: 28.0.1 API version: 1.48 Go version: go1.23.6 Git commit: 068a01e Built: Wed Feb 26 10:40:57 2025 OS/Arch: linux/arm64 Context: default Server: Docker Engine - Community Engine: Version: 28.0.1 API version: 1.48 (minimum version 1.24) Go version: go1.23.6 Git commit: bbd0a17 Built: Wed Feb 26 10:40:57 2025 OS/Arch: linux/arm64 Experimental: false containerd: Version: 1.7.25 GitCommit: bcc810d6b9066471b0b6fa75f557a15a1cbf31bb runc: Version: 1.2.4 GitCommit: v1.2.4-0-g6c52b3f docker-init: Version: 0.19.0 GitCommit: de40ad0
Author
Owner

@Dennis864 commented on GitHub (Mar 3, 2025):

For anyone with the same issue on Raspberry Pi (OS) or arm64. I am using the following workaround, which works for me.
Create and use a Dockerfile to startup nginx with the following content:

FROM docker.io/jc21/nginx-proxy-manager:latest

RUN apt-get update && apt-get install -y wget curl python3-dev
RUN wget https://go.dev/dl/go1.22.1.linux-arm64.tar.gz
RUN tar -C /usr/local -xzf go1.22.1.linux-arm64.tar.gz
RUN rm go1.22.1.linux-arm64.tar.gz
ENV PATH="/usr/local/go/bin:${PATH}"

The issue seems to be that neither go, nor python3 is installed in the image which this Dockerfile solves. The issuance of an certificate took a very long time for me, so be patient. Probably because of the very long installation time of the certbot dns multi plugin.

<!-- gh-comment-id:2695752968 --> @Dennis864 commented on GitHub (Mar 3, 2025): For anyone with the same issue on Raspberry Pi (OS) or arm64. I am using the following workaround, which works for me. Create and use a Dockerfile to startup nginx with the following content: ``` FROM docker.io/jc21/nginx-proxy-manager:latest RUN apt-get update && apt-get install -y wget curl python3-dev RUN wget https://go.dev/dl/go1.22.1.linux-arm64.tar.gz RUN tar -C /usr/local -xzf go1.22.1.linux-arm64.tar.gz RUN rm go1.22.1.linux-arm64.tar.gz ENV PATH="/usr/local/go/bin:${PATH}" ``` The issue seems to be that neither go, nor python3 is installed in the image which this Dockerfile solves. The issuance of an certificate took a very long time for me, so be patient. Probably because of the very long installation time of the certbot dns multi plugin.
Author
Owner

@rarnken commented on GitHub (Mar 4, 2025):

For anyone with the same issue on Raspberry Pi (OS) or arm64. I am using the following workaround, which works for me. Create and use a Dockerfile to startup nginx with the following content:

FROM docker.io/jc21/nginx-proxy-manager:latest

RUN apt-get update && apt-get install -y wget curl python3-dev
RUN wget https://go.dev/dl/go1.22.1.linux-arm64.tar.gz
RUN tar -C /usr/local -xzf go1.22.1.linux-arm64.tar.gz
RUN rm go1.22.1.linux-arm64.tar.gz
ENV PATH="/usr/local/go/bin:${PATH}"

The issue seems to be that neither go, nor python3 is installed in the image which this Dockerfile solves. The issuance of an certificate took a very long time for me, so be patient. Probably because of the very long installation time of the certbot dns multi plugin.

I can confirm that your solution is working on a RPI4. Thanks a lot!

<!-- gh-comment-id:2696775238 --> @rarnken commented on GitHub (Mar 4, 2025): > For anyone with the same issue on Raspberry Pi (OS) or arm64. I am using the following workaround, which works for me. Create and use a Dockerfile to startup nginx with the following content: > > ``` > FROM docker.io/jc21/nginx-proxy-manager:latest > > RUN apt-get update && apt-get install -y wget curl python3-dev > RUN wget https://go.dev/dl/go1.22.1.linux-arm64.tar.gz > RUN tar -C /usr/local -xzf go1.22.1.linux-arm64.tar.gz > RUN rm go1.22.1.linux-arm64.tar.gz > ENV PATH="/usr/local/go/bin:${PATH}" > ``` > > The issue seems to be that neither go, nor python3 is installed in the image which this Dockerfile solves. The issuance of an certificate took a very long time for me, so be patient. Probably because of the very long installation time of the certbot dns multi plugin. I can confirm that your solution is working on a RPI4. Thanks a lot!
Author
Owner

@Alby407 commented on GitHub (Jul 1, 2025):

For anyone with the same issue on Raspberry Pi (OS) or arm64. I am using the following workaround, which works for me. Create and use a Dockerfile to startup nginx with the following content:

FROM docker.io/jc21/nginx-proxy-manager:latest

RUN apt-get update && apt-get install -y wget curl python3-dev
RUN wget https://go.dev/dl/go1.22.1.linux-arm64.tar.gz
RUN tar -C /usr/local -xzf go1.22.1.linux-arm64.tar.gz
RUN rm go1.22.1.linux-arm64.tar.gz
ENV PATH="/usr/local/go/bin:${PATH}"

The issue seems to be that neither go, nor python3 is installed in the image which this Dockerfile solves. The issuance of an certificate took a very long time for me, so be patient. Probably because of the very long installation time of the certbot dns multi plugin.

Did not work for me. I still get the go error unfortunately.

<!-- gh-comment-id:3021308609 --> @Alby407 commented on GitHub (Jul 1, 2025): > For anyone with the same issue on Raspberry Pi (OS) or arm64. I am using the following workaround, which works for me. Create and use a Dockerfile to startup nginx with the following content: > > ``` > FROM docker.io/jc21/nginx-proxy-manager:latest > > RUN apt-get update && apt-get install -y wget curl python3-dev > RUN wget https://go.dev/dl/go1.22.1.linux-arm64.tar.gz > RUN tar -C /usr/local -xzf go1.22.1.linux-arm64.tar.gz > RUN rm go1.22.1.linux-arm64.tar.gz > ENV PATH="/usr/local/go/bin:${PATH}" > ``` > > The issue seems to be that neither go, nor python3 is installed in the image which this Dockerfile solves. The issuance of an certificate took a very long time for me, so be patient. Probably because of the very long installation time of the certbot dns multi plugin. Did not work for me. I still get the go error unfortunately.
Author
Owner

@lastsamurai26 commented on GitHub (Jul 23, 2025):

the issue is still existing =(

CommandError:   error: subprocess-exited-with-error
  
  × Building wheel for certbot-dns-multi (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [48 lines of output]
      /tmp/pip-build-env-fsi589he/overlay/lib/python3.11/site-packages/_distutils_hack/__init__.py:53: UserWarning: Reliance on distutils from stdlib is deprecated. Users must rely on setuptools to provide the distutils module. Avoid importing distutils or import setuptools first, and avoid setting SETUPTOOLS_USE_DISTUTILS=stdlib. Register concerns at https://github.com/pypa/setuptools/issues/new?template=distutils-deprecation.yml
        warnings.warn(
      /tmp/pip-build-env-fsi589he/overlay/lib/python3.11/site-packages/setuptools/config/_apply_pyprojecttoml.py:82: SetuptoolsDeprecationWarning: `project.license` as a TOML table is deprecated
      !!
      
              ********************************************************************************
              Please use a simple string containing a SPDX expression for `project.license`. You can also use `project.license-files`. (Both options available on setuptools>=77.0.0).
      
              By 2026-Feb-18, you need to update your project and remove deprecated calls
              or your builds will no longer be supported.
      
              See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details.
              ********************************************************************************
      
      !!
        corresp(dist, value, root_dir)
      pip_system_certs: ERROR: truststore not available
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.linux-aarch64-3.11
      creating build/lib.linux-aarch64-3.11/certbot_dns_multi
      copying certbot_dns_multi/_version.py -> build/lib.linux-aarch64-3.11/certbot_dns_multi
      copying certbot_dns_multi/__init__.py -> build/lib.linux-aarch64-3.11/certbot_dns_multi
      package init file 'certbot_dns_multi/_internal/__init__.py' not found (or not a regular file)
      creating build/lib.linux-aarch64-3.11/certbot_dns_multi/_internal
      copying certbot_dns_multi/_internal/dns_multi.py -> build/lib.linux-aarch64-3.11/certbot_dns_multi/_internal
      package init file 'certbot_dns_multi/_internal/bridge/__init__.py' not found (or not a regular file)
      running egg_info
      writing certbot_dns_multi.egg-info/PKG-INFO
      writing dependency_links to certbot_dns_multi.egg-info/dependency_links.txt
      writing entry points to certbot_dns_multi.egg-info/entry_points.txt
      writing requirements to certbot_dns_multi.egg-info/requires.txt
      writing top-level names to certbot_dns_multi.egg-info/top_level.txt
      ERROR setuptools_scm._file_finders.git listing git files failed - pretending there aren't any
      reading manifest file 'certbot_dns_multi.egg-info/SOURCES.txt'
      reading manifest template 'MANIFEST.in'
      adding license file 'LICENSE.txt'
      writing manifest file 'certbot_dns_multi.egg-info/SOURCES.txt'
      creating build/lib.linux-aarch64-3.11/certbot_dns_multi/_internal/bridge
      copying certbot_dns_multi/_internal/bridge/go.mod -> build/lib.linux-aarch64-3.11/certbot_dns_multi/_internal/bridge
      copying certbot_dns_multi/_internal/bridge/go.sum -> build/lib.linux-aarch64-3.11/certbot_dns_multi/_internal/bridge
      copying certbot_dns_multi/_internal/bridge/main.c -> build/lib.linux-aarch64-3.11/certbot_dns_multi/_internal/bridge
      copying certbot_dns_multi/_internal/bridge/main.go -> build/lib.linux-aarch64-3.11/certbot_dns_multi/_internal/bridge
      running build_ext
      $ GOPATH=/tmp/tmpsquk296x go get -d
      error: [Errno 2] No such file or directory: 'go'
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for certbot-dns-multi
ERROR: Failed to build installable wheels for some pyproject.toml based projects (certbot-dns-multi)

    at /app/lib/utils.js:16:13
    at ChildProcess.exithandler (node:child_process:430:5)
    at ChildProcess.emit (node:events:524:28)
    at maybeClose (node:internal/child_process:1104:16)
    at ChildProcess._handle.onexit (node:internal/child_process:304:5)

<!-- gh-comment-id:3107664277 --> @lastsamurai26 commented on GitHub (Jul 23, 2025): the issue is still existing =( ``` CommandError: error: subprocess-exited-with-error × Building wheel for certbot-dns-multi (pyproject.toml) did not run successfully. │ exit code: 1 ╰─> [48 lines of output] /tmp/pip-build-env-fsi589he/overlay/lib/python3.11/site-packages/_distutils_hack/__init__.py:53: UserWarning: Reliance on distutils from stdlib is deprecated. Users must rely on setuptools to provide the distutils module. Avoid importing distutils or import setuptools first, and avoid setting SETUPTOOLS_USE_DISTUTILS=stdlib. Register concerns at https://github.com/pypa/setuptools/issues/new?template=distutils-deprecation.yml warnings.warn( /tmp/pip-build-env-fsi589he/overlay/lib/python3.11/site-packages/setuptools/config/_apply_pyprojecttoml.py:82: SetuptoolsDeprecationWarning: `project.license` as a TOML table is deprecated !! ******************************************************************************** Please use a simple string containing a SPDX expression for `project.license`. You can also use `project.license-files`. (Both options available on setuptools>=77.0.0). By 2026-Feb-18, you need to update your project and remove deprecated calls or your builds will no longer be supported. See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! corresp(dist, value, root_dir) pip_system_certs: ERROR: truststore not available running bdist_wheel running build running build_py creating build creating build/lib.linux-aarch64-3.11 creating build/lib.linux-aarch64-3.11/certbot_dns_multi copying certbot_dns_multi/_version.py -> build/lib.linux-aarch64-3.11/certbot_dns_multi copying certbot_dns_multi/__init__.py -> build/lib.linux-aarch64-3.11/certbot_dns_multi package init file 'certbot_dns_multi/_internal/__init__.py' not found (or not a regular file) creating build/lib.linux-aarch64-3.11/certbot_dns_multi/_internal copying certbot_dns_multi/_internal/dns_multi.py -> build/lib.linux-aarch64-3.11/certbot_dns_multi/_internal package init file 'certbot_dns_multi/_internal/bridge/__init__.py' not found (or not a regular file) running egg_info writing certbot_dns_multi.egg-info/PKG-INFO writing dependency_links to certbot_dns_multi.egg-info/dependency_links.txt writing entry points to certbot_dns_multi.egg-info/entry_points.txt writing requirements to certbot_dns_multi.egg-info/requires.txt writing top-level names to certbot_dns_multi.egg-info/top_level.txt ERROR setuptools_scm._file_finders.git listing git files failed - pretending there aren't any reading manifest file 'certbot_dns_multi.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' adding license file 'LICENSE.txt' writing manifest file 'certbot_dns_multi.egg-info/SOURCES.txt' creating build/lib.linux-aarch64-3.11/certbot_dns_multi/_internal/bridge copying certbot_dns_multi/_internal/bridge/go.mod -> build/lib.linux-aarch64-3.11/certbot_dns_multi/_internal/bridge copying certbot_dns_multi/_internal/bridge/go.sum -> build/lib.linux-aarch64-3.11/certbot_dns_multi/_internal/bridge copying certbot_dns_multi/_internal/bridge/main.c -> build/lib.linux-aarch64-3.11/certbot_dns_multi/_internal/bridge copying certbot_dns_multi/_internal/bridge/main.go -> build/lib.linux-aarch64-3.11/certbot_dns_multi/_internal/bridge running build_ext $ GOPATH=/tmp/tmpsquk296x go get -d error: [Errno 2] No such file or directory: 'go' [end of output] note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for certbot-dns-multi ERROR: Failed to build installable wheels for some pyproject.toml based projects (certbot-dns-multi) at /app/lib/utils.js:16:13 at ChildProcess.exithandler (node:child_process:430:5) at ChildProcess.emit (node:events:524:28) at maybeClose (node:internal/child_process:1104:16) at ChildProcess._handle.onexit (node:internal/child_process:304:5) ```
Author
Owner

@AlexKusnezov commented on GitHub (Aug 18, 2025):

having the same with dns_multi_provider = ipv64

<!-- gh-comment-id:3197430477 --> @AlexKusnezov commented on GitHub (Aug 18, 2025): having the same with dns_multi_provider = ipv64
Author
Owner

@suhlatwork commented on GitHub (Aug 28, 2025):

Issue #4529 appears to be the same.

The solution from https://github.com/NginxProxyManager/nginx-proxy-manager/issues/4408#issuecomment-2695752968 is in principle still working but requires a more recent version of the Go compiler (https://go.dev/dl/go1.24.5.linux-arm64.tar.gz worked for me).

<!-- gh-comment-id:3234630055 --> @suhlatwork commented on GitHub (Aug 28, 2025): Issue #4529 appears to be the same. The solution from https://github.com/NginxProxyManager/nginx-proxy-manager/issues/4408#issuecomment-2695752968 is in principle still working but requires a more recent version of the Go compiler (https://go.dev/dl/go1.24.5.linux-arm64.tar.gz worked for me).
Author
Owner

@mathiaslehmann commented on GitHub (Nov 9, 2025):

https://v64.tech/t/nginx-proxy-manager-dnschallenge-ipv64-debian-13-fail/4177/7

<!-- gh-comment-id:3508888466 --> @mathiaslehmann commented on GitHub (Nov 9, 2025): https://v64.tech/t/nginx-proxy-manager-dnschallenge-ipv64-debian-13-fail/4177/7
Author
Owner

@kenetrix commented on GitHub (Nov 20, 2025):

https://v64.tech/t/nginx-proxy-manager-dnschallenge-ipv64-debian-13-fail/4177/7

Seems GoLang does not come preinstalled on the nginx image. The steps described here were the solution! 🎉
Keep in mind to increase resources like RAM and CPU temporarily.

apt install golang
pip install --no-build-isolation --no-cache-dir certbot-dns-multi
<!-- gh-comment-id:3560145248 --> @kenetrix commented on GitHub (Nov 20, 2025): > https://v64.tech/t/nginx-proxy-manager-dnschallenge-ipv64-debian-13-fail/4177/7 Seems GoLang does not come preinstalled on the nginx image. The steps described here were the solution! 🎉 Keep in mind to increase resources like RAM and CPU temporarily. ``` apt install golang pip install --no-build-isolation --no-cache-dir certbot-dns-multi ```
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/nginx-proxy-manager-NginxProxyManager#2823
No description provided.