feat: implement custom proxy subscription management and enhance configuration

- Added support for importing Clash/V2ray subscriptions, including automatic format detection and integration with sing-box for protocol conversion.
- Introduced five proxy usage modes in the configuration, allowing flexible selection between mixed, custom-only, and free-only modes.
- Enhanced `.env.example` and `docker-compose.yml` to include new environment variables for custom proxy settings.
- Updated `CHANGELOG.md` to document new features and improvements related to subscription management.
- Improved WebUI for managing subscriptions and displaying proxy statistics.
- Implemented a background process for refreshing subscriptions and probing disabled proxies for reactivation.
This commit is contained in:
isboyjc
2026-04-04 22:25:54 +08:00
parent 2d118688a5
commit f03c3300b4
23 changed files with 5394 additions and 1488 deletions

View File

@@ -26,8 +26,10 @@ services:
- PROXY_AUTH_PASSWORD=${PROXY_AUTH_PASSWORD}
- BLOCKED_COUNTRIES=${BLOCKED_COUNTRIES:-CN}
- ALLOWED_COUNTRIES=${ALLOWED_COUNTRIES}
- CUSTOM_PROXY_MODE=${CUSTOM_PROXY_MODE:-mixed}
- SINGBOX_PATH=sing-box
healthcheck:
test: ["CMD", "wget", "-qO-", "http://localhost:7778/"]
test: ["CMD-SHELL", "curl -sf http://localhost:7778/ || exit 1"]
interval: 30s
timeout: 5s
retries: 3