Skip to content
Magpie-ToolsPublic

Repository files navigation

Magpie logo

Self-hosted proxy management for you and your team


Magpie collects proxies, checks which ones work, and serves them through stable rotating endpoints. Keep a usable proxy pool for your applications without manually sorting through stale lists and replacing dead proxies.

Run it on your own infrastructure with Docker Compose, manage it in the web dashboard, and connect your applications through the API or a rotating proxy.

Features

  • Collects proxies automatically from web sources and supports imports of proxy lists and provider endpoints.
  • Continuously checks HTTP, HTTPS, SOCKS4, and/or SOCKS5 proxies, with checker rules for different tags.
  • Provides rotating proxy endpoints that select healthy upstream proxies.
  • Tracks proxy health, latency, uptime, and reputation.
  • Supports tags, search, filters, and exports for provider hostnames, IPv4, and IPv6 proxies.
  • Supports shared workspaces with roles and invitations.
  • Sends workspace and pool-health alerts by email, Slack, Discord, or webhook.

Magpie dashboard

More screenshots Proxy list Add proxies Scrape sources Alert rules

Install

Magpie requires either Docker Desktop or the Docker Engine with Docker Compose.

One-command install

macOS/Linux:

curl -fsSL https://magpie.tools/install.sh | bash

Windows PowerShell:

irm https://magpie.tools/install.ps1 | iex

The installer asks for a proxy encryption key, creates a magpie/ deployment directory, generates the remaining credentials, and starts the stack.

Clone and run

git clone https://github.com/Magpie-Tools/magpie.git
cd magpie
cp .env.example .env

Edit .env and replace the example PROXY_ENCRYPTION_KEY and database password. Then migrate and start:

docker compose run --rm backend --migrate-only && docker compose up -d

Open http://localhost:5050 and register your first account. The first registered account becomes the administrator in the default local configuration.

Keep PROXY_ENCRYPTION_KEY unchanged across restarts and upgrades. Existing encrypted credentials depend on it. Redis queue credentials are plaintext by default, so keep Redis private. See the installation guide for configuration and the deployment guide before exposing Magpie on a public server.

Upgrade

Take a coordinated backup of PostgreSQL, Redis, configuration, and keys before upgrading. Keep PROXY_ENCRYPTION_KEY unchanged and update the frontend and backend together.

For an installer-created deployment, run the update command from the directory containing magpie/:

macOS/Linux:

curl -fsSL https://magpie.tools/update.sh | bash

Windows PowerShell:

irm https://magpie.tools/update.ps1 | iex

For a cloned repository, run this from its root:

./scripts/update-stack.sh

Or in Windows Command Prompt:

scripts\update-stack.bat

The helpers pull updated images, stop the backend, run database migrations, and restart after the migration succeeds. Stop any additional backend replicas before running the helper.

See the upgrade guide for image versions, production deployments, migration notes, and rollback.

Documentation

Start with your first proxy, then use the guides for rotating proxies, checker settings and tag rules, and alerts. The full documentation also covers the API, configuration, security, and troubleshooting.

Repository map

Repository Content
magpie Docker Compose, installation, updates, and release validation
magpie-backend Go API, checker, scraper, background jobs, and rotating proxy listeners
magpie-frontend Angular web application
magpie-docs User guides, API reference, and operations documentation
magpie-website Public website at magpie.tools

Community and contributing

Join Discord for discussion or open an issue to report a bug.

See the contributing guide for local development and validation.

License

Magpie is licensed under the GNU Affero General Public License v3.0. See LICENSE.

The AbuseIPDB logo is used with permission.

Releases

Packages

Used by

Contributors

Languages