Like #1220, this question also came up when developing the NixOS module for Pangolin.
Gerbil has some configuration options that imply it can be accessed remotely, such as --reacheableAt and gerbil.base_endpoint, which might mean you can have a self-hosted Pangolin running on a separate environment to Gerbil. (or multiple Gerbils?)
If that is the case, what parts of Traefik, if any, need to run on the machine that is running Gerbil? Could the docs be expanded to account for this configuration?
Originally created by @SigmaSquadron on GitHub (Aug 5, 2025).
Original GitHub issue: https://github.com/fosrl/pangolin/issues/1221
Like #1220, this question also came up when developing the NixOS module for Pangolin.
Gerbil has some configuration options that imply it can be accessed remotely, such as `--reacheableAt` and `gerbil.base_endpoint`, which might mean you can have a self-hosted Pangolin running on a separate environment to Gerbil. (or multiple Gerbils?)
If that is the case, what parts of Traefik, if any, need to run on the machine that is running Gerbil? Could the docs be expanded to account for this configuration?
@oschwartz10612 commented on GitHub (Aug 6, 2025):
Hi! Yes you can! Not really multiple gerbils right now. You would need
to do two things: edit the gerbil config in the docker file to have the
reachable at and pangolin endpoints reach the remote pangolin env.
Essentially pangolin and gerbil need to reach each other and this is the
section you put that in.
You still need to run traefik in gerbil because thats the http entry
point into the network. So the change you would need for this is to edit
the traefik config and change the http provider to the remote pangolin
address.
With both of those you should be able to run them separately. Your entry
point for both gerbil and the domain should be pointing to the traefik
gerbil combo and you will access the api separately.
On 8/5/25 16:27, Fernando Rodrigues wrote:
SigmaSquadron created an issue (fosrl/pangolin#1221) <https://
github.com/fosrl/pangolin/issues/1221>
Gerbil has some configuration options that imply it can be accessed
remotely, such as |--reacheableAt| and |gerbil.base_endpoint|, which
might mean you can have a self-hosted Pangolin running on a separate
environment to Gerbil. (or multiple Gerbils?)
If that is the case, what parts of Traefik, if any, need to run on the
machine that is running Gerbil? Could the docs be expanded to account
for this configuration?
—
Reply to this email directly, view it on GitHub <https://github.com/
fosrl/pangolin/issues/1221>, or unsubscribe <https://github.com/
notifications/unsubscribe-auth/
ABGEUGA4FTRO6D3Y3WVVY6T3ME4XBAVCNFSM6AAAAACDGK7O32VHI2DSMVQWIX3LMV43ASLTON2WKOZTGI4TINZQGEYTCNI>.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>
<!-- gh-comment-id:3160938081 -->
@oschwartz10612 commented on GitHub (Aug 6, 2025):
Hi! Yes you can! Not really multiple gerbils right now. You would need
to do two things: edit the gerbil config in the docker file to have the
reachable at and pangolin endpoints reach the remote pangolin env.
Essentially pangolin and gerbil need to reach each other and this is the
section you put that in.
You still need to run traefik in gerbil because thats the http entry
point into the network. So the change you would need for this is to edit
the traefik config and change the http provider to the remote pangolin
address.
With both of those you should be able to run them separately. Your entry
point for both gerbil and the domain should be pointing to the traefik
gerbil combo and you will access the api separately.
On 8/5/25 16:27, Fernando Rodrigues wrote:
> *SigmaSquadron* created an issue (fosrl/pangolin#1221) <https://
> github.com/fosrl/pangolin/issues/1221>
>
> Like #1220 <https://github.com/fosrl/pangolin/issues/1220>, this
> question also came up when developing the NixOS module for Pangolin.
>
> Gerbil has some configuration options that imply it can be accessed
> remotely, such as |--reacheableAt| and |gerbil.base_endpoint|, which
> might mean you can have a self-hosted Pangolin running on a separate
> environment to Gerbil. (or multiple Gerbils?)
>
> If that is the case, what parts of Traefik, if any, need to run on the
> machine that is running Gerbil? Could the docs be expanded to account
> for this configuration?
>
> —
> Reply to this email directly, view it on GitHub <https://github.com/
> fosrl/pangolin/issues/1221>, or unsubscribe <https://github.com/
> notifications/unsubscribe-auth/
> ABGEUGA4FTRO6D3Y3WVVY6T3ME4XBAVCNFSM6AAAAACDGK7O32VHI2DSMVQWIX3LMV43ASLTON2WKOZTGI4TINZQGEYTCNI>.
> You are receiving this because you are subscribed to this thread.Message
> ID: ***@***.***>
>
You still need to run traefik in gerbil because thats the http entry
point into the network. So the change you would need for this is to edit
the traefik config and change the http provider to the remote pangolin
address.
Okay, so if you have Machine A running Gerbil at 198.51.100.1, and Machine B running Pangolin at pangolin.example.com, you'd set the --reacheableAt to https://198.51.100.1:PORT, and --remoteConfig to https://pangolin.example.com/api/v1/gerbil/get-config, assuming Pangolin's API is publicly routable. Pangolin can then have gerbil.base_domain set to 198.51.100.1, right?
This means that Traefik in Machine B (pangolin) only needs the configuration to expose the dashboard: (and more configuration to publicly expose the API)
My question is mostly about how should I configure Traefik on either machine, and if the snippets above are correct. To be clear, this configuration is completely insane and I'm impressed that it's even supported at all. I don't plan to run it, but I do need to make it available in the NixOS module @jackrosenberg is designing for other users to configure.
<!-- gh-comment-id:3162592624 -->
@SigmaSquadron commented on GitHub (Aug 7, 2025):
> You still need to run traefik in gerbil because thats the http entry
point into the network. So the change you would need for this is to edit
the traefik config and change the http provider to the remote pangolin
address.
Okay, so if you have `Machine A` running Gerbil at `198.51.100.1`, and `Machine B` running Pangolin at `pangolin.example.com`, you'd set the `--reacheableAt` to `https://198.51.100.1:PORT`, and `--remoteConfig` to `https://pangolin.example.com/api/v1/gerbil/get-config`, assuming Pangolin's API is publicly routable. Pangolin can then have `gerbil.base_domain` set to `198.51.100.1`, right?
This means that Traefik in `Machine B` (pangolin) only needs the configuration to expose the dashboard: (and more configuration to publicly expose the API)
```yaml
rule: "Host(`pangolin.example.com`) && !PathPrefix(`/api/v1`)"
service: next-service
entryPoints:
- websecure
tls:
certResolver: letsencrypt
```
And Traefik in `Machine A` (gerbil) can have this set: (`Machine B` will not have this)
```yaml
providers:
http:
endpoint: "http://pangolin.example.com:3001/api/v1/traefik-config"
pollInterval: "5s"
```
My question is mostly about how should I configure Traefik on either machine, and if the snippets above are correct. To be clear, this configuration is completely insane and I'm impressed that it's even supported at all. I don't plan to run it, but I do need to make it available in the NixOS module @jackrosenberg is designing for other users to configure.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Originally created by @SigmaSquadron on GitHub (Aug 5, 2025).
Original GitHub issue: https://github.com/fosrl/pangolin/issues/1221
Like #1220, this question also came up when developing the NixOS module for Pangolin.
Gerbil has some configuration options that imply it can be accessed remotely, such as
--reacheableAtandgerbil.base_endpoint, which might mean you can have a self-hosted Pangolin running on a separate environment to Gerbil. (or multiple Gerbils?)If that is the case, what parts of Traefik, if any, need to run on the machine that is running Gerbil? Could the docs be expanded to account for this configuration?
@oschwartz10612 commented on GitHub (Aug 6, 2025):
Hi! Yes you can! Not really multiple gerbils right now. You would need
to do two things: edit the gerbil config in the docker file to have the
reachable at and pangolin endpoints reach the remote pangolin env.
Essentially pangolin and gerbil need to reach each other and this is the
section you put that in.
You still need to run traefik in gerbil because thats the http entry
point into the network. So the change you would need for this is to edit
the traefik config and change the http provider to the remote pangolin
address.
With both of those you should be able to run them separately. Your entry
point for both gerbil and the domain should be pointing to the traefik
gerbil combo and you will access the api separately.
On 8/5/25 16:27, Fernando Rodrigues wrote:
@SigmaSquadron commented on GitHub (Aug 7, 2025):
Okay, so if you have
Machine Arunning Gerbil at198.51.100.1, andMachine Brunning Pangolin atpangolin.example.com, you'd set the--reacheableAttohttps://198.51.100.1:PORT, and--remoteConfigtohttps://pangolin.example.com/api/v1/gerbil/get-config, assuming Pangolin's API is publicly routable. Pangolin can then havegerbil.base_domainset to198.51.100.1, right?This means that Traefik in
Machine B(pangolin) only needs the configuration to expose the dashboard: (and more configuration to publicly expose the API)And Traefik in
Machine A(gerbil) can have this set: (Machine Bwill not have this)My question is mostly about how should I configure Traefik on either machine, and if the snippets above are correct. To be clear, this configuration is completely insane and I'm impressed that it's even supported at all. I don't plan to run it, but I do need to make it available in the NixOS module @jackrosenberg is designing for other users to configure.
@oschwartz10612 commented on GitHub (Aug 7, 2025):
Exactly!
@SigmaSquadron commented on GitHub (Aug 8, 2025):
Awesome! I'll get to work then.