fosrl / fosrl/pangolin

Gerbil loads 0 proxy mappings after successful installation, resulting in persistent HTTP 502

Open
#3,354 15 comments 0 reactions 1 assignee Claimed by @oschwartz10612 View on GitHub
needs investigating potential bug
Dominant language
TypeScript
Stars
22.8k
Forks
783
Avg merge
1d 7h
Merged PRs (30d)
53

Description

### Describe the Bug

I spent several hours trying to deploy Pangolin 1.19.x and ultimately had to abandon it.

During troubleshooting I repeatedly observed inconsistent behavior:

* Pangolin started successfully.
* Gerbil started successfully.
* Newt established a WebSocket connection.
* TLS certificates were issued correctly.
* The resource, target, site, and domain all existed in the database.
* Despite that, Gerbil consistently reported "Loaded 0 initial proxy mappings."
* Traefik never generated dynamic routes for the configured resource.
* The public endpoint consistently returned HTTP 502.

I also encountered additional issues during troubleshooting:

* Gerbil panics on restart with "panic: close of closed channel".
* Restarting components sometimes resulted in inconsistent state.
* Manual database inspection showed resources and targets existed, but they were apparently never propagated into Gerbil.
* Documentation did not provide enough information to diagnose why mappings were never generated.

At this point I could not get a fresh installation working reliably, even after rebuilding the deployment from scratch.

If there are known issues with Pangolin 1.19.x regarding proxy mapping generation or Newt/Gerbil synchronization, it would be helpful to document them. Otherwise, I believe there may be a bug preventing valid resources from being propagated to Gerbil.

### Environment

## OS Type & Version

**VPS**

* Ubuntu Server 24.04 LTS
* Docker Compose deployment

**Newt Host**

* Ubuntu Server 24.04 LTS running inside a Proxmox LXC

---

## Pangolin Version

1.19.4

---

## Edition

Community

---

## Gerbil Version

latest (bundled with Pangolin 1.19.4)

---

## Traefik Version

v3.6

---

## Newt Version

1.13.0

---

## Client Version

N/A

### To Reproduce

1. Fresh install of Pangolin 1.19.4.
2. Configure domain.
3. Register a Newt client.
4. Create one HTTP resource pointing to an internal service.
5. Verify the resource and target exist in the SQLite database.
6. Restart Pangolin, Gerbil and Traefik.
7. Observe that Gerbil reports zero proxy mappings and the public endpoint returns HTTP 502.

### Expected Behavior

Gerbil should receive the configured resource mapping, generate the proxy configuration, and forward traffic to the Newt client.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.