35 lines
1.7 KiB
YAML
35 lines
1.7 KiB
YAML
services:
|
|
proxy:
|
|
environment:
|
|
# Traefik sends PROXY protocol v1 to preserve the original client IP.
|
|
#
|
|
# Existing custom listener arguments are appended after -H.
|
|
PROXY_EXTRA_ARGS: "-H ${PROXY_EXTRA_ARGS:-}"
|
|
SOCKS_EXTRA_ARGS: "-H ${SOCKS_EXTRA_ARGS:-}"
|
|
|
|
networks:
|
|
- proxy
|
|
- traefik
|
|
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.docker.network=${TRAEFIK_NETWORK:-traefik}"
|
|
|
|
# HTTP proxy router and service
|
|
- "traefik.tcp.routers.${TRAEFIK_ROUTER_PREFIX:-chained-3proxy}-http.entrypoints=${TRAEFIK_HTTP_ENTRYPOINT:-proxy-http}"
|
|
- "traefik.tcp.routers.${TRAEFIK_ROUTER_PREFIX:-chained-3proxy}-http.rule=HostSNI(`*`)"
|
|
- "traefik.tcp.routers.${TRAEFIK_ROUTER_PREFIX:-chained-3proxy}-http.service=${TRAEFIK_ROUTER_PREFIX:-chained-3proxy}-http"
|
|
- "traefik.tcp.services.${TRAEFIK_ROUTER_PREFIX:-chained-3proxy}-http.loadbalancer.server.port=${PROXY_PORT:-3128}"
|
|
- "traefik.tcp.services.${TRAEFIK_ROUTER_PREFIX:-chained-3proxy}-http.loadbalancer.proxyprotocol.version=1"
|
|
|
|
# SOCKS router and service
|
|
- "traefik.tcp.routers.${TRAEFIK_ROUTER_PREFIX:-chained-3proxy}-socks.entrypoints=${TRAEFIK_SOCKS_ENTRYPOINT:-proxy-socks}"
|
|
- "traefik.tcp.routers.${TRAEFIK_ROUTER_PREFIX:-chained-3proxy}-socks.rule=HostSNI(`*`)"
|
|
- "traefik.tcp.routers.${TRAEFIK_ROUTER_PREFIX:-chained-3proxy}-socks.service=${TRAEFIK_ROUTER_PREFIX:-chained-3proxy}-socks"
|
|
- "traefik.tcp.services.${TRAEFIK_ROUTER_PREFIX:-chained-3proxy}-socks.loadbalancer.server.port=${SOCKS_PORT:-1080}"
|
|
- "traefik.tcp.services.${TRAEFIK_ROUTER_PREFIX:-chained-3proxy}-socks.loadbalancer.proxyprotocol.version=1"
|
|
|
|
networks:
|
|
traefik:
|
|
external: true
|
|
name: "${TRAEFIK_NETWORK:-traefik}" |