Initial release

This commit is contained in:
Maxim Kalistratov
2026-07-26 05:13:30 +04:00
commit 47a50832b3
11 changed files with 1064 additions and 0 deletions
+67
View File
@@ -0,0 +1,67 @@
COMPOSE_PROJECT_NAME=egress-proxy
# Authenticated upstream HTTP proxy
UPSTREAM_HOST=
UPSTREAM_PORT=8080
UPSTREAM_USERNAME=
UPSTREAM_PASSWORD=
# Native tarampampam/3proxy settings
LOG_OUTPUT=/dev/stdout
PROXY_PORT=3128
SOCKS_PORT=1080
PRIMARY_RESOLVER=1.1.1.1
SECONDARY_RESOLVER=8.8.8.8
DNS_CACHE_SIZE=65536
MAX_CONNECTIONS=100
NOFILE_SOFT=2048
NOFILE_HARD=4096
# 3proxy chaining and access control
PARENT_RETRIES=3
# Comma-separated source addresses/CIDRs, or * for everyone.
# Examples:
# CLIENT_ALLOW=192.168.0.0/16
# CLIENT_ALLOW=192.168.1.10,192.168.1.11
CLIENT_ALLOW=*
# Additional arguments appended to the generated listeners.
PROXY_EXTRA_ARGS=
SOCKS_EXTRA_ARGS=
# Standalone port publishing
BIND_ADDRESS=127.0.0.1
HTTP_PUBLIC_PORT=3128
SOCKS_PUBLIC_PORT=1080
# Existing Traefik integration
TRAEFIK_NETWORK=traefik
TRAEFIK_ROUTER_PREFIX=chained-3proxy
TRAEFIK_HTTP_ENTRYPOINT=proxy-http
TRAEFIK_SOCKS_ENTRYPOINT=proxy-socks
# Existing containerized Nginx/HAProxy integration
EDGE_NETWORK=edge
EDGE_SERVICE_ALIAS=chained-3proxy
# Smoke tests
TEST_IMAGE=curlimages/curl:8.14.1
# These endpoints must return only the public IP address.
TEST_HTTP_URL=http://api.ipify.org
TEST_HTTPS_URL=https://api.ipify.org
TEST_ATTEMPTS=20
TEST_RETRY_DELAY=1
TEST_TIMEOUT=15
# Strongest validation method when the upstream has a fixed exit IP.
EXPECTED_EXIT_IP=
# Disable this if the upstream rotates between several exit IPs.
ASSERT_SAME_PROXY_EXIT=true
# Disable this if direct internet access is blocked or if the upstream
# legitimately uses the same public IP as the Docker host.
ASSERT_DIFFERENT_FROM_DIRECT=true