Installer does not create a working instance of Pangolin. #415

Closed
opened 2026-04-05 17:09:36 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @nathanakalish on 1/1/2026

Describe the Bug

When deploying Pangolin on a freshly provisioned VPS, the initial setup completes and presents a setup key and access URL, but the web interface is not usable. Accessing the Pangolin URL from any browser consistently results in a “Too many redirects” error.

This occurs even after verifying that DNS resolution, firewall rules, and port accessibility are correctly configured. The issue persists across multiple browsers and client machines and appears independent of the selected installation options.

Below is the docker-compose.yml generated during setup:

name: pangolin
services:
  pangolin:
    image: docker.io/fosrl/pangolin:ee-1.14.1
    container_name: pangolin
    restart: unless-stopped
    volumes:
      - ./config:/app/config
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:3001/api/v1/"]
      interval: "10s"
      timeout: "10s"
      retries: 15

  gerbil:
    image: docker.io/fosrl/gerbil:1.3.0
    container_name: gerbil
    restart: unless-stopped
    depends_on:
      pangolin:
        condition: service_healthy
    command:
      - --reachableAt=http://gerbil:3004
      - --generateAndSaveKeyTo=/var/config/key
      - --remoteConfig=http://pangolin:3001/api/v1/
    volumes:
      - ./config/:/var/config
    cap_add:
      - NET_ADMIN
      - SYS_MODULE
    ports:
      - 51820:51820/udp
      - 21820:21820/udp
      - 443:443
      - 80:80

  traefik:
    image: docker.io/traefik:v3.6
    container_name: traefik
    restart: unless-stopped
    network_mode: service:gerbil
    depends_on:
      pangolin:
        condition: service_healthy
    command:
      - --configFile=/etc/traefik/traefik_config.yml
    volumes:
      - ./config/traefik:/etc/traefik:ro
      - ./config/letsencrypt:/letsencrypt
      - ./config/traefik/logs:/var/log/traefik

networks:
  default:
    driver: bridge
    name: pangolin
    enable_ipv6: true

Environment

•	Hosting Provider: Hetzner VPS
•	Operating System: Ubuntu 24.04 (fresh install)
•	Docker: Installed from official Docker repositories
•	Pangolin Version: 1.14.1 (both ee and non-EE tested)
•	Gerbil Version: 1.3.0
•	Traefik Version: 3.6
•	DNS A record - pangolin.example.com - points to the VPS public IP
•	Hetzner firewall allows:
•	TCP: 80, 443
•	UDP: 51820, 21820
•	DNS resolution verified via direct DNS queries
•	Ports 80 and 443 confirmed reachable using standalone test containers

To Reproduce

1. Provision a brand-new VPS (Ubuntu 24.04).
2. Install Docker.
3. Configure DNS so pangolin.example.com points to the VPS public IP.
4. Ensure firewall rules allow ports 80, 443, 51820/udp, and 21820/udp.
5. Deploy Pangolin using the installer, generating the docker-compose.yml above.
6. Wait for the Pangolin setup process to complete and present the setup key and access URL.
7. Navigate to the provided Pangolin URL in a browser.

Expected Behavior

After completing the initial setup, navigating to the Pangolin URL should load the Pangolin web interface successfully, allowing the user to continue configuration and normal operation without redirect loops.

*Originally created by @nathanakalish on 1/1/2026* ### Describe the Bug When deploying Pangolin on a freshly provisioned VPS, the initial setup completes and presents a setup key and access URL, but the web interface is not usable. Accessing the Pangolin URL from any browser consistently results in a “Too many redirects” error. This occurs even after verifying that DNS resolution, firewall rules, and port accessibility are correctly configured. The issue persists across multiple browsers and client machines and appears independent of the selected installation options. Below is the docker-compose.yml generated during setup: ``` name: pangolin services: pangolin: image: docker.io/fosrl/pangolin:ee-1.14.1 container_name: pangolin restart: unless-stopped volumes: - ./config:/app/config healthcheck: test: ["CMD", "curl", "-f", "http://localhost:3001/api/v1/"] interval: "10s" timeout: "10s" retries: 15 gerbil: image: docker.io/fosrl/gerbil:1.3.0 container_name: gerbil restart: unless-stopped depends_on: pangolin: condition: service_healthy command: - --reachableAt=http://gerbil:3004 - --generateAndSaveKeyTo=/var/config/key - --remoteConfig=http://pangolin:3001/api/v1/ volumes: - ./config/:/var/config cap_add: - NET_ADMIN - SYS_MODULE ports: - 51820:51820/udp - 21820:21820/udp - 443:443 - 80:80 traefik: image: docker.io/traefik:v3.6 container_name: traefik restart: unless-stopped network_mode: service:gerbil depends_on: pangolin: condition: service_healthy command: - --configFile=/etc/traefik/traefik_config.yml volumes: - ./config/traefik:/etc/traefik:ro - ./config/letsencrypt:/letsencrypt - ./config/traefik/logs:/var/log/traefik networks: default: driver: bridge name: pangolin enable_ipv6: true ``` ### Environment • Hosting Provider: Hetzner VPS • Operating System: Ubuntu 24.04 (fresh install) • Docker: Installed from official Docker repositories • Pangolin Version: 1.14.1 (both ee and non-EE tested) • Gerbil Version: 1.3.0 • Traefik Version: 3.6 • DNS A record - pangolin.example.com - points to the VPS public IP • Hetzner firewall allows: • TCP: 80, 443 • UDP: 51820, 21820 • DNS resolution verified via direct DNS queries • Ports 80 and 443 confirmed reachable using standalone test containers ### To Reproduce 1. Provision a brand-new VPS (Ubuntu 24.04). 2. Install Docker. 3. Configure DNS so pangolin.example.com points to the VPS public IP. 4. Ensure firewall rules allow ports 80, 443, 51820/udp, and 21820/udp. 5. Deploy Pangolin using the installer, generating the docker-compose.yml above. 6. Wait for the Pangolin setup process to complete and present the setup key and access URL. 7. Navigate to the provided Pangolin URL in a browser. ### Expected Behavior After completing the initial setup, navigating to the Pangolin URL should load the Pangolin web interface successfully, allowing the user to continue configuration and normal operation without redirect loops.
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/pangolin#415