NginxProxyManager / NginxProxyManager/nginx-proxy-manager

certbot-dns-cloudflare install fails.

Open
#2,381 25 comments 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug stale
Dominant language
TypeScript
Stars
34.2k
Forks
3.9k
Avg merge
21h 12m
Merged PRs (30d)
20

Description

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

Installing certbot-dns-cloudflare fails when creating a new SSL certificate

Nginx Proxy Manager Version
2.9.19

To Reproduce
Steps to reproduce the behavior:

  1. Login to admin area.
  2. Click on SSL Certificates
  3. Click on Add SSL Certificate
  4. Setup Cloudflare DNS to get a new certificate and click save
  5. Produces an error after timeout period

Expected behavior
SSL Certificate is created.

Screenshots
This is the error

[11/8/2022] [12:14:59 PM] [Express  ] › ⚠  warning   Command failed: pip install certbot-dns-cloudflare==$(certbot --version | grep -Eo '[0-9](\.[0-9]+)+') cloudflare

WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ReadTimeoutError("HTTPSConnectionPool(host='pypi.org', port=443): Read timed out. (read timeout=15)")': /simple/certbot-dns-cloudflare/

WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ReadTimeoutError("HTTPSConnectionPool(host='pypi.org', port=443): Read timed out. (read timeout=15)")': /simple/certbot-dns-cloudflare/

WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ReadTimeoutError("HTTPSConnectionPool(host='pypi.org', port=443): Read timed out. (read timeout=15)")': /simple/certbot-dns-cloudflare/

WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ReadTimeoutError("HTTPSConnectionPool(host='pypi.org', port=443): Read timed out. (read timeout=15)")': /simple/certbot-dns-cloudflare/

WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ReadTimeoutError("HTTPSConnectionPool(host='pypi.org', port=443): Read timed out. (read timeout=15)")': /simple/certbot-dns-cloudflare/

ERROR: Could not find a version that satisfies the requirement certbot-dns-cloudflare==1.31.0 (from versions: none)

ERROR: No matching distribution found for certbot-dns-cloudflare==1.31.0

Operating System
Ubuntu 20.04 LTS

Additional context
Docker version 20.10.21

docker-compose.yml

version: "3"
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
      # These ports are in format <host-port>:<container-port>
      - '80:80' # Public HTTP Port
      - '443:443' # Public HTTPS Port
      - '81:81' # Admin Web Port
      # Add any other Stream port you want to expose
      # - '21:21' # FTP
    environment:
      DB_MYSQL_HOST: "db"
      DB_MYSQL_PORT: 3306
      DB_MYSQL_USER: "npm"
      DB_MYSQL_PASSWORD: "xxxxxx"
      DB_MYSQL_NAME: "npm"
      # Uncomment this if IPv6 is not enabled on your host
      DISABLE_IPV6: 'true'
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt
    depends_on:
      - db

  db:
    image: 'jc21/mariadb-aria:latest'
    restart: unless-stopped
    environment:
      MYSQL_ROOT_PASSWORD: 'xxxxxx'
      MYSQL_DATABASE: 'npm'
      MYSQL_USER: 'npm'
      MYSQL_PASSWORD: 'xxxxxx'
    volumes:
      - ./data/mysql:/var/lib/mysql

I've checked my network and the container is able to download other files using curl.

image

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at Admin > SSL Certificates > Add SSL Certificate and reproduce the Cloudflare DNS certificate flow in the jc21/nginx-proxy-manager:latest container. Check the logged pip install command and its PyPI timeout; done means the dependency installs and the SSL certificate is created successfully.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, python
Domain
cloud, devops, security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.