clean up for 1.11

This commit is contained in:
miloschwartz
2025-10-14 17:07:40 -07:00
parent 908abeda8d
commit b7c3f45901
39 changed files with 223 additions and 316 deletions

View File

@@ -1,6 +1,6 @@
MIT License MIT License
Copyright (c) 2024 Fossorial INC Copyright (c) 2025 Fossorial, Inc.
Permission is hereby granted, free of charge, to any person obtaining a copy Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal of this software and associated documentation files (the "Software"), to deal

View File

@@ -3,7 +3,7 @@ title: "How Pangolin Works"
description: "Learn about Pangolin's architecture and how its components work together to provide secure application access" description: "Learn about Pangolin's architecture and how its components work together to provide secure application access"
--- ---
Pangolin provides secure, application-specific ingress to your applications through a network of nodes. Users connect to the closest node, which authenticates them and routes their requests through secure tunnels to your applications. Pangolin provides secure, application-specific ingress to your applications through a network of nodes. Users connect to the closest node, which authenticates them and routes their requests through secure tunnels to your backend.
<Frame> <Frame>
<img src="/images/diagram.svg" width="400" centered/> <img src="/images/diagram.svg" width="400" centered/>
@@ -29,10 +29,6 @@ Pangolin provides secure, application-specific ingress to your applications thro
</Step> </Step>
</Steps> </Steps>
<Info>
Nodes provide a mesh of high availability - if one location goes down, traffic automatically routes to the next closest location.
</Info>
## Deployment Options ## Deployment Options
<CardGroup cols={2}> <CardGroup cols={2}>
@@ -40,7 +36,7 @@ Nodes provide a mesh of high availability - if one location goes down, traffic a
Large network of nodes with automatic failover and routing to your backend services. We host the Pangolin server for you. Large network of nodes with automatic failover and routing to your backend services. We host the Pangolin server for you.
</Card> </Card>
<Card title="Community Edition" icon="server" href="/self-host/quick-install"> <Card title="Self-host Pangolin" icon="server" href="/self-host/quick-install">
Fully self-hosted, self-contained Pangolin server acting as a single node. Fully self-hosted, self-contained Pangolin server acting as a single node.
</Card> </Card>

View File

@@ -64,7 +64,7 @@ Pangolin provides secure, application-specific ingress and routing without the l
Edge networks don't need public IP addresses. Edge networks don't need public IP addresses.
</Card> </Card>
<Card title="Highly Available Mesh" icon="circle-nodes" href="/manage/nodes"> <Card title="Highly Available Mesh" icon="circle-nodes" href="/manage/remote-node/ha">
Multiple nodes ensure high availability. Multiple nodes ensure high availability.
</Card> </Card>
</CardGroup> </CardGroup>

419
docs.json
View File

@@ -1,220 +1,207 @@
{ {
"$schema": "https://mintlify.com/docs.json", "$schema": "https://mintlify.com/docs.json",
"theme": "aspen", "theme": "aspen",
"name": "Pangolin Docs", "name": "Pangolin Docs",
"description": "Pangolin is a communityed alternative to Cloudflare Tunnels, designed to provide secure and highly-available ingress access to applications.", "description": "Pangolin is a self-hosted alternative to Cloudflare Tunnels, designed to provide secure and highly-available ingress access to applications.",
"colors": { "colors": {
"primary": "#F36117", "primary": "#F36117",
"light": "#F36117", "light": "#F36117",
"dark": "#F36117" "dark": "#F36117"
}, },
"banner": { "favicon": "/favicon.svg",
"content": "We're hiring software engineers! [Click here](https://click.fossorial.io/L0OXr) to get in touch.", "navigation": {
"dismissible": true "tabs": [
}, {
"favicon": "/favicon.svg", "tab": "Docs",
"navigation": { "groups": [
"tabs": [ {
{ "group": "About",
"tab": "Docs", "pages": [
"groups": [ "about/pangolin-vs-traditional-reverse-proxy",
{ "about/pangolin-vs-vpn"
"group": "About",
"pages": [
"about/how-pangolin-works",
"about/pangolin-vs-traditional-reverse-proxy",
"about/pangolin-vs-vpn"
]
},
{
"group": "Pangolin",
"pages": [
{
"group": "Sites",
"pages": [
"manage/sites/add-site",
"manage/sites/install-site",
"manage/sites/install-kubernetes",
"manage/sites/configure-site",
"manage/sites/update-site"
]
},
{
"group": "Resources",
"pages": [
"manage/resources/targets",
"manage/resources/tcp-udp-resources",
"manage/resources/client-resources"
]
},
"manage/healthchecks-failover",
"manage/geoblocking",
"manage/blueprints",
{
"group": "Clients",
"pages": [
"manage/clients/add-client",
"manage/clients/install-client",
"manage/clients/configure-client"
]
},
{
"group": "Access Control",
"pages": [
"manage/access-control/rules",
"manage/access-control/forwarded-headers",
"manage/access-control/login-page"
]
},
{
"group": "Identity Providers",
"pages": [
"manage/identity-providers/add-an-idp",
"manage/identity-providers/auto-provisioning",
"manage/identity-providers/openid-connect",
"manage/identity-providers/google",
"manage/identity-providers/azure",
"manage/identity-providers/pocket-id",
"manage/identity-providers/zitadel"
]
},
"manage/domains",
"manage/integration-api"
]
},
{
"group": "Community Edition",
"pages": [
"community/quick-install",
{
"group": "Manual Installation",
"pages": [
"community/manual/docker-compose",
"community/manual/unraid"
]
},
"community/dns-and-networking",
"community/choosing-a-vps",
"community/how-to-update",
"community/supporter-program",
"community/system-architecture",
"community/enable-geoblocking",
{
"group": "Advanced Configuration",
"pages": [
"community/advanced/config-file",
"community/advanced/wild-card-domains",
"community/advanced/cloudflare-proxy",
"community/advanced/without-tunneling",
"community/advanced/container-cli-tool",
"community/advanced/database-options",
"community/advanced/integration-api"
]
},
{
"group": "Community Guides",
"pages": [
"community/community-guides/overview",
"community/community-guides/proxyprotocol",
"community/community-guides/geoblock",
"community/community-guides/crowdsec",
"community/community-guides/metrics",
"community/community-guides/homeassistant",
"community/community-guides/middlewaremanager",
"community/community-guides/traefiklogsdashboard"
]
},
"community/telemetry"
]
},
{
"group": "Remote Nodes",
"pages": [
"remote/nodes",
"remote/convert-remote",
"remote/remote",
"remote/quick-install-remote",
{
"group": "Manual Installation",
"pages": [
"community/manual/remote"
]
}
]
},
{
"group": "Development",
"pages": [
"development/contributing",
"development/feature-requests-and-bug-reports"
]
}
]
},
{
"tab": "Blog",
"href": "https://digpangolin.com/blog"
}
],
"global": {
"anchors": [
{
"anchor": "GitHub",
"href": "https://github.com/fosrl/pangolin",
"icon": "github"
},
{
"anchor": "Slack",
"href": "https://digpangolin.com/slack",
"icon": "slack"
},
{
"anchor": "Discord",
"href": "https://digpangolin.com/discord",
"icon": "discord"
},
{
"anchor": "Support Plans",
"href": "https://digpangolin.com/support",
"icon": "life-ring"
}
] ]
} },
}, {
"logo": { "group": "Manage Pangolin",
"light": "/logo/light.png", "pages": [
"dark": "/logo/dark.png", {
"href": "https://docs.digpangolin.com" "group": "Sites",
}, "pages": [
"navbar": { "manage/sites/add-site",
"links": [ "manage/sites/install-site",
{ "manage/sites/install-kubernetes",
"label": "Contact Us", "manage/sites/configure-site",
"href": "mailto:numbat@fossorial.io" "manage/sites/update-site"
} ]
], },
"primary": { {
"type": "button", "group": "Resources",
"label": "Pangolin Dashboard", "pages": [
"href": "https://pangolin.fossorial.io" "manage/resources/targets",
} "manage/resources/tcp-udp-resources",
}, "manage/resources/client-resources"
"footer": { ]
"socials": { },
"github": "https://github.com/fosrl/pangolin", {
"linkedin": "https://linkedin.com/company/digpangolin" "group": "Access Control",
} "pages": [
}, "manage/access-control/rules",
"integrations": { "manage/access-control/forwarded-headers",
"posthog": { "manage/access-control/login-page",
"apiKey": "phc_RIHQ7o2Y2hf8qms2nP62vpoJHEvsrw6TieflQGQO7yI", "manage/geoblocking"
"apiHost": "https://digpangolin.com/relay-O7yI" ]
} },
}, {
"redirects": [ "group": "Identity Providers",
"pages": [
"manage/identity-providers/add-an-idp",
"manage/identity-providers/auto-provisioning",
"manage/identity-providers/openid-connect",
"manage/identity-providers/google",
"manage/identity-providers/azure",
"manage/identity-providers/pocket-id",
"manage/identity-providers/zitadel"
]
},
{
"group": "Clients",
"pages": [
"manage/clients/add-client",
"manage/clients/install-client",
"manage/clients/configure-client"
]
},
"manage/healthchecks-failover",
"manage/blueprints",
{
"group": "Remote Nodes",
"pages": [
"manage/remote-node/ha",
"manage/remote-node/nodes",
"manage/remote-node/quick-install-remote",
"manage/remote-node/convert-remote"
]
},
"manage/domains",
"manage/integration-api"
]
},
{
"group": "Self-host Pangolin",
"pages": [
"self-host/quick-install",
{
"group": "Manual Installation",
"pages": [
"self-host/manual/docker-compose",
"self-host/manual/unraid"
]
},
"self-host/dns-and-networking",
"self-host/choosing-a-vps",
"self-host/how-to-update",
"self-host/supporter-program",
{
"group": "Advanced Configuration",
"pages": [
"self-host/advanced/config-file",
"self-host/advanced/wild-card-domains",
"self-host/advanced/cloudflare-proxy",
"self-host/advanced/without-tunneling",
"self-host/advanced/container-cli-tool",
"self-host/advanced/database-options",
"self-host/advanced/integration-api",
"self-host/advanced/enable-geoblocking"
]
},
{
"group": "Community Guides",
"pages": [
"self-host/community-guides/overview",
"self-host/community-guides/proxyprotocol",
"self-host/community-guides/crowdsec",
"self-host/community-guides/metrics",
"self-host/community-guides/homeassistant",
"self-host/community-guides/middlewaremanager",
"self-host/community-guides/traefiklogsdashboard"
]
},
"self-host/telemetry"
]
},
{
"group": "Development",
"pages": [
"development/system-architecture",
"development/contributing",
"development/feature-requests-and-bug-reports"
]
}
]
},
{
"tab": "Blog",
"href": "https://digpangolin.com/blog"
},
{
"tab": "Website",
"href": "https://digpangolin.com"
}
],
"global": {
"anchors": [
{ {
"source": "/telemetry", "anchor": "GitHub",
"destination": "/community/telemetry" "href": "https://github.com/fosrl/pangolin",
"icon": "github"
},
{
"anchor": "Slack",
"href": "https://digpangolin.com/slack",
"icon": "slack"
},
{
"anchor": "Discord",
"href": "https://digpangolin.com/discord",
"icon": "discord"
} }
] ]
} }
},
"logo": {
"light": "/logo/light.png",
"dark": "/logo/dark.png",
"href": "https://docs.digpangolin.com"
},
"navbar": {
"links": [
{
"label": "Contact Us",
"href": "mailto:numbat@fossorial.io"
}
],
"primary": {
"type": "button",
"label": "Pangolin Dashboard",
"href": "https://pangolin.fossorial.io"
}
},
"footer": {
"socials": {
"github": "https://github.com/fosrl/pangolin",
"linkedin": "https://linkedin.com/company/digpangolin"
}
},
"integrations": {
"posthog": {
"apiKey": "phc_RIHQ7o2Y2hf8qms2nP62vpoJHEvsrw6TieflQGQO7yI",
"apiHost": "https://digpangolin.com/relay-O7yI"
}
},
"redirects": [
{
"source": "/telemetry",
"destination": "/self-host/telemetry"
}
]
}

View File

@@ -10,21 +10,12 @@ Pangolin is an open-source and identity-aware tunneled reverse proxy server. Pan
Pangolin establishes secure connections from edge networks to nodes, bypassing the need for public inbound ports and complex firewall configurations. Pangolin is incredibly useful for exposing local services, IoT devices, or internal applications to the internet without direct exposure, enhancing security by reducing attack surface and simplifying network management. Additionally, Pangolin acts as an identity-aware proxy by authenticating every request against admin-defined access controls and rules. Pangolin establishes secure connections from edge networks to nodes, bypassing the need for public inbound ports and complex firewall configurations. Pangolin is incredibly useful for exposing local services, IoT devices, or internal applications to the internet without direct exposure, enhancing security by reducing attack surface and simplifying network management. Additionally, Pangolin acts as an identity-aware proxy by authenticating every request against admin-defined access controls and rules.
<Columns cols={2}>
<Card title="How It Works" icon="map" href="/about/how-pangolin-works">
Learn how the Pangolin system works from the server to the edge network.
</Card>
<Card title="Self-hosted Nodes" icon="circle-nodes" href="/manage/nodes">
Learn about how Pangolin provides highly available ingress to your backend.
</Card>
</Columns>
<Columns cols={2}> <Columns cols={2}>
<Card title="Pangolin Cloud" icon="cloud" href="https://pangolin.fossorial.io/auth/signup"> <Card title="Pangolin Cloud" icon="cloud" href="https://pangolin.fossorial.io/auth/signup">
Use Cloud for a highly available and access-controllerd ingress service with nodes all over the world. Use Cloud for a highly available and access-controlled ingress service with nodes all over the world. Optionally self-host a node to keep your traffic private.
</Card> </Card>
<Card title="Quick Install Guide" icon="server" href="/self-host/quick-install-remote"> <Card title="Self-host Pangolin" icon="server" href="self-host/quick-install">
Learn the fastest way to install a managed self-hosted Pangolin node. Self-host a fully isolated Pangolin server. Install the Community Edition or Enterprise Edition easily using the quick installer.
</Card> </Card>
</Columns> </Columns>

View File

@@ -1,10 +1,10 @@
--- ---
title: "Geo Blocking" title: "Geo-blocking"
description: "Configure geo blocking to restrict access based on geographic location" description: "Configure geo blocking to restrict access based on geographic location"
--- ---
<Note> <Note>
Geoblocking is available in Pangolin community! Make sure to follow this guide for how to enable: [Enabling Geo Blocking](/community/enable-geoblocking) Geoblocking is available in Pangolin community! Make sure to follow this guide for how to enable: [Enabling Geo Blocking](/self-host/advanced/enable-geoblocking)
</Note> </Note>
<iframe <iframe

View File

@@ -1,5 +1,5 @@
--- ---
title: "Health Checks & Failover" title: "Health Checks"
description: "Configure automated health monitoring and failover for high availability" description: "Configure automated health monitoring and failover for high availability"
--- ---

View File

@@ -1,12 +1,8 @@
--- ---
title: "Convert to Managed" title: "Convert to Remote Node"
description: "Learn how to convert your Community Edition Pangolin instance to a managed self-hosted node for free" description: "Learn how to convert your Community or Enterprise Edition Pangolin instance to a remote node"
--- ---
<Info>
Check out the [Managed Deployment Guide](/self-host/quick-install-remote) for more information on deploying a managed instance of Pangolin.
</Info>
## Who is this for? ## Who is this for?
Use this guide if you have a self-hosted Pangolin instance and want to convert it to a managed deployment. It's pretty easy! Use this guide if you have a self-hosted Pangolin instance and want to convert it to a managed deployment. It's pretty easy!
@@ -38,7 +34,7 @@ Your existing Pangolin data will stay in the database, so feel free to try manag
docker-compose down docker-compose down
``` ```
2. Ensure you have a backup of your `config` directory. 2. Ensure you have a backup of your `config` directory.
3. Make sure your instance is [up to date](./how-to-update) with the latest versions of Pangolin, Gerbil, and Traefik. 3. Make sure your instance is [up to date](/self-host/how-to-update) with the latest versions of Pangolin, Gerbil, and Traefik.
</Step> </Step>

View File

@@ -78,27 +78,3 @@ Think of different nodes as the "front doors" to your applications - users conne
No single point of failure - if one location goes down, there is always a way back to your application. No single point of failure - if one location goes down, there is always a way back to your application.
</Card> </Card>
</CardGroup> </CardGroup>
## Deployment Models
<CardGroup cols={3}>
<Card title="Pangolin Cloud" icon="cloud" href="https://pangolin.fossorial.io/auth/signup">
Network of nodes with automatic failover and routing to your backend services.
</Card>
<Card title="Managed" icon="circle-nodes" href="/manage/managed">
Host your own multiple nodes with cloud coordination and automatic failover. Data always transits your servers.
</Card>
<Card title="Self-Hosted" icon="server" href="/self-host/quick-install">
Fully self-hosted, self-contained Pangolin server acting as a single node.
</Card>
</CardGroup>
<Warning>
Self-hosted Pangolin provides only a single node and is not highly available. Consider Pangolin Cloud or managed deployment for production environments requiring high availability.
</Warning>
<Tip>
Managed deployment is ideal for organizations that need high availability while maintaining control over their infrastructure and data transit.
</Tip>

View File

@@ -8,7 +8,7 @@ description: "More reliable and low-maintenance self-hosted Pangolin server with
With this option, you still run your own Pangolin node — your tunnels, SSL termination, and traffic all stay on your server. The difference is that management and monitoring are handled through our cloud dashboard, which unlocks a number of significant benefits. With this option, you still run your own Pangolin node — your tunnels, SSL termination, and traffic all stay on your server. The difference is that management and monitoring are handled through our cloud dashboard, which unlocks a number of significant benefits.
<Tip> <Tip>
You can deploy a managed Pangolin node in seconds [using the installer](/self-host/quick-install-remote). You can deploy a managed Pangolin node in seconds [using the installer](/manage/remote-node/quick-install-remote).
</Tip> </Tip>
## How It Works ## How It Works
@@ -31,10 +31,6 @@ The managed self-hosted approach gives you the best of both worlds:
**Reduced Operational Burden**: Focus on your core business while we handle the operational complexity of keeping your tunneling infrastructure running smoothly. **Reduced Operational Burden**: Focus on your core business while we handle the operational complexity of keeping your tunneling infrastructure running smoothly.
<Note>
For detailed information about how nodes work and their advantages, see our [Nodes](/manage/nodes) documentation.
</Note>
## Key Benefits ## Key Benefits
### Simpler Operations ### Simpler Operations
@@ -54,19 +50,3 @@ You can also attach multiple nodes to your account for redundancy and better per
### Future Enhancements ### Future Enhancements
We're planning to add more analytics, alerting, and management tools to make your deployment even more robust. You'll automatically benefit from these improvements as they're released. We're planning to add more analytics, alerting, and management tools to make your deployment even more robust. You'll automatically benefit from these improvements as they're released.
## Getting Started
<Tip>
You can deploy a managed Pangolin node in seconds [using the installer](/self-host/quick-install-remote).
</Tip>
Ready to convert your existing self-hosted node to managed? Learn how in our [conversion guide](/self-host/convert-managed).
<Note>
For detailed information about how nodes work and their advantages, see our [nodes](/manage/nodes) documentation.
</Note>
<Tip>
Managed deployment is ideal for organizations that need high availability and reduced operational overhead while maintaining complete control over their infrastructure and data transit.
</Tip>

View File

@@ -3,15 +3,6 @@ title: "Quick Install Guide"
description: "Deploy your own managed Pangolin instance in under 10 minutes with our automated installer" description: "Deploy your own managed Pangolin instance in under 10 minutes with our automated installer"
--- ---
<Note>
Self-host your own Pangolin node using the cloud control plane for out of the box high availability and a number of other benefits.
**It's free and all traffic stays on your infrastructure.**
[Why would I want to deploy a managed Pangolin instance?](/manage/managed)
</Note>
<iframe <iframe
className="w-full aspect-video rounded-xl" className="w-full aspect-video rounded-xl"
src="https://www.youtube.com/embed/iPdK8M0cb9s" src="https://www.youtube.com/embed/iPdK8M0cb9s"

View File

@@ -1,5 +1,5 @@
--- ---
title: "Enable Geo Blocking" title: "Enable Geo-blocking"
description: "Configuration requirements to enable geoblocking in Pangolin" description: "Configuration requirements to enable geoblocking in Pangolin"
--- ---
@@ -57,4 +57,4 @@ Then run the installer again:
</Step> </Step>
</Steps> </Steps>
Alternativly you can create an account at [Maxmind](https://www.maxmind.com/en/geolite2/signup) to get a license key and download the database directly from them. Alternativly you can create an account at [Maxmind](https://www.maxmind.com/en/geolite2/signup) to get a license key and download the database directly from them.

View File

@@ -95,7 +95,7 @@ trusted_proxies:
- VPS IP - VPS IP
``` ```
You also need to set up `Resource rules` in the pangolin dashboard. [See rule overview here](/manage/access-control/bypass-rules). You also need to set up `Resource rules` in the pangolin dashboard. [See rule overview here](/manage/access-control/rules).
Many thanks to steuerlexi for finding this out! Many thanks to steuerlexi for finding this out!

View File

@@ -13,7 +13,7 @@ This guide assumes you already have a Linux server with Docker and Docker Compos
## Prerequisites ## Prerequisites
Checkout the [quick install guide](self-host/quick-install-remote) for more info regarding what is needed before you install Pangolin. Checkout the [quick install guide](self-host/quick-install) for more info regarding what is needed before you install Pangolin.
## File Structure ## File Structure

View File

@@ -1,18 +1,8 @@
--- ---
title: "Installation Guide" title: "Quick Install Guide"
description: "Deploy your own fully self-hosted instance of Pangolin Community Edition" description: "Deploy your own fully self-hosted instance of Pangolin Community Edition"
--- ---
<Note>
This guide is for the Community Edition self-hosted Pangolin. For self-hosting a highly available managed node, check out [this quick install guide](/self-host/quick-install-remote).
What does this mean? Learn about Managed Self-hosted Nodes [here](/manage/managed).
</Note>
<Info>
Community Edition Pangolin provides only one node and is not highly available.
</Info>
## Prerequisites ## Prerequisites
Before you begin, ensure you have: Before you begin, ensure you have: