Skip to content

Process hangs at Completed SSL cert renew process #5521

@hunter-m-git

Description

@hunter-m-git

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

WebUI never loads.

Last message from console is Completed SSL cert renew process.

Nginx Proxy Manager Version

can't reach the login page.

To Reproduce
Steps to reproduce the behavior:

  1. run docker compose up on new os install
  2. process hangs before any more steps can be taken
  3. remove volumes and try again - no change

Expected behavior

WebUI loads.

Screenshots

Image

Operating System

Endeavor OS (Docker)

Additional context

Console log:
✔ Container cloudflare-tunnel Running 0.0s
✔ Container proxy-app-1 Running 0.0s
Attaching to cloudflare-tunnel, app-1, db-1
app-1 | - /opt/certbot/lib/python3.11/site-packages ...
app-1 | SKIPPED
app-1 | ❯ Dynamic resolvers ...
app-1 | ❯ IPv6 ...
app-1 | Enabling IPV6 in hosts in: /etc/nginx/conf.d
app-1 | - /etc/nginx/conf.d/production.conf
app-1 | - /etc/nginx/conf.d/default.conf
app-1 | - /etc/nginx/conf.d/include/proxy.conf
app-1 | - /etc/nginx/conf.d/include/letsencrypt-acme-challenge.conf
app-1 | - /etc/nginx/conf.d/include/ssl-ciphers.conf
app-1 | - /etc/nginx/conf.d/include/block-exploits.conf
app-1 | - /etc/nginx/conf.d/include/log-proxy.conf
app-1 | - /etc/nginx/conf.d/include/assets.conf
app-1 | - /etc/nginx/conf.d/include/log-stream.conf
app-1 | - /etc/nginx/conf.d/include/ip_ranges.conf
app-1 | - /etc/nginx/conf.d/include/ssl-cache.conf
app-1 | - /etc/nginx/conf.d/include/ssl-cache-stream.conf
app-1 | - /etc/nginx/conf.d/include/force-ssl.conf
app-1 | - /etc/nginx/conf.d/include/resolvers.conf
app-1 | Enabling IPV6 in hosts in: /data/nginx
app-1 | ❯ Docker secrets ...
app-1 |
app-1 | -------------------------------------
app-1 | _ _ ____ __ __
app-1 | | \ | | _ | / |
app-1 | | | | |) | |/| |
app-1 | | |\ | __/| | | |
app-1 | |
| _|| || |_|
app-1 | -------------------------------------
app-1 | User: npm PUID:0 ID:0 GROUP:0
app-1 | Group: npm PGID:0 ID:0
app-1 | -------------------------------------
app-1 |
app-1 | ❯ Starting backend ...
app-1 | ❯ Starting nginx ...
db-1 |
db-1 | PostgreSQL Database directory appears to contain a database; Skipping initialization
db-1 |
db-1 | 2026-05-06 02:06:00.771 UTC [1] LOG: starting PostgreSQL 18.3 (Debian 18.3-1.pgdg13+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 14.2.0-19) 14.2.0, 64-bit
db-1 | 2026-05-06 02:06:00.806 UTC [1] LOG: listening on IPv4 address "0.0.0.0", port 5432
db-1 | 2026-05-06 02:06:00.806 UTC [1] LOG: listening on IPv6 address "::", port 5432
db-1 | 2026-05-06 02:06:01.174 UTC [1] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
db-1 | 2026-05-06 02:06:01.543 UTC [33] LOG: database system was shut down at 2026-05-06 01:48:36 UTC
db-1 | 2026-05-06 02:06:01.985 UTC [1] LOG: database system is ready to accept connections
app-1 | [5/6/2026] [2:06:30 AM] [Global ] › ℹ info Using Postgres configuration
app-1 | [5/6/2026] [2:06:38 AM] [Migrate ] › ℹ info Current database version: 20260131163528
app-1 | [5/6/2026] [2:06:39 AM] [Setup ] › ℹ info Logrotate Timer initialized
app-1 | [5/6/2026] [2:06:39 AM] [Setup ] › ℹ info Logrotate completed.
app-1 | [5/6/2026] [2:06:39 AM] [Global ] › ℹ info IP Ranges fetch is enabled
app-1 | [5/6/2026] [2:06:39 AM] [IP Ranges] › ℹ info Fetching IP Ranges from online services...
app-1 | [5/6/2026] [2:06:39 AM] [IP Ranges] › ℹ info Fetching https://ip-ranges.amazonaws.com/ip-ranges.json
app-1 | [5/6/2026] [2:06:39 AM] [IP Ranges] › ℹ info Fetching https://www.cloudflare.com/ips-v4
app-1 | [5/6/2026] [2:06:39 AM] [IP Ranges] › ℹ info Fetching https://www.cloudflare.com/ips-v6
app-1 | [5/6/2026] [2:06:40 AM] [SSL ] › ℹ info Let's Encrypt Renewal Timer initialized
app-1 | [5/6/2026] [2:06:40 AM] [SSL ] › ℹ info Renewing SSL certs expiring within 30 days ...
app-1 | [5/6/2026] [2:06:40 AM] [IP Ranges] › ℹ info IP Ranges Renewal Timer initialized
app-1 | [5/6/2026] [2:06:40 AM] [Global ] › ℹ info Backend PID 169 listening on port 3000 ...
app-1 | [5/6/2026] [2:06:40 AM] [SSL ] › ℹ info Completed SSL cert renew process
db-1 | 2026-05-06 02:11:01.614 UTC [31] LOG: checkpoint starting: time
db-1 | 2026-05-06 02:11:02.240 UTC [31] LOG: checkpoint complete: wrote 1 buffers (0.0%), wrote 3 SLRU buffers; 0 WAL file(s) added, 0 removed, 0 recycled; write=0.219 s, sync=0.132 s, total=0.626 s; sync files=3, longest=0.054 s, average=0.044 s; distance=0 kB, estimate=0 kB; lsn=0/1D06040, redo lsn=0/1D05FD0

Docker-compose:
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
# These ports are in format :
- '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:
# Postgres parameters:
DB_POSTGRES_HOST: 'db'
DB_POSTGRES_PORT: '5432'
DB_POSTGRES_USER: 'npm'
DB_POSTGRES_PASSWORD: 'npmpass'
DB_POSTGRES_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: postgres:latest
environment:
POSTGRES_USER: 'npm'
POSTGRES_PASSWORD: 'npmpass'
POSTGRES_DB: 'npm'
volumes:
- ./postgres:/var/lib/postgresql

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions