-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
84 lines (78 loc) · 3.61 KB
/
Copy pathdocker-compose.yml
File metadata and controls
84 lines (78 loc) · 3.61 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
version: "2.4"
services:
# tor:
# image: wizardrysteamworks/tor-snowflake:latest
# container_name: tor
# restart: always
# # Expose only to host's loopback
# ports:
# - "9050:9050" # Tor SOCKS
# - "9053:9053" # Tor control (optional)
# volumes:
# - ./tor/etc:/run/tor/config:Z
# - ./tor/data:/run/tor/data:Z
multitor:
# Note: rebuild this frequently as newer snowflake clients offer more stealth
build: ./multitor
container_name: multitor
ports:
- "16378:16378" # Custom Load-balancer
- "16379:16379" # Maps host port 16379 to container port 16379 (HAProxy)
- "16380:16380" # HAProxy Stats
volumes:
- ./multitor/templates:/usr/src/app/templates:Z # Maps custom templates from host to container
environment:
## More Instances = More Untracability + More Chance Of Good Circuits & Less Top_N_Proxies = Better Ping & Balanced Top_N_Proxies = More Speed Due To Good Circuits Concurrency
## For Time-Sensitive Stuff Such As Gaming And Realtime Messaging Better To Use Ping Check & For Speed-Sensitive Stuff Better To Use Download Check (TODO: Two Separate Socks5 Server)
- TOR_INSTANCES=44 # Default number of Tor instances, can be overridden in .env file or by CLI, 2x number of templates for default is preferred, 4x number of templates for high-restricted networks is preferred, for custom cases such as snowflake only or snowflake + relay scanner only you would assign high quantity for maximum chance of connection, regardless of number of instances the maximum bootstrap time is 30 minutes.
- PROXY_MODE=custom_lb # Proxy Mode Options: socks, custom_lb
- LB_Top_N_Proxies=4 # number of proxies to roundrobin for custom_lb, for networks with high interrupts and dpi the higher number is better but it may affect speed inversely
# - LB_Algorithm=sequential # sequential algorithm will retry each request sequentially sorted by check mode
- LB_Check_Mode=1 # 0 = ping check, 1 = download check, ping might be a better choice for networks with high interrupts and dpi
cap_add:
- NET_ADMIN # Required by Tor for some operations, and potentially by HAProxy/Privoxy.
restart: always
# cpuset: "0"
# deploy:
# resources:
# limits:
# # Hard Ceiling: Never Exceed N CPU Cores (Default is No Limit)
# cpus: '2' # Fix Race Condition
# # reservations:
# # # Lower Priority Than Default Processes (Default is 1024)
# # cpu_shares: 512
# dpyproxy:
# build: ./dpyproxy
# ports:
# - "4433:4433" # Proxy-Server
# restart: always
# command: ["--frag_size", "20", "--debug", "--port", "4433", "--host", "0.0.0.0"]
psiphon:
image: swarupsengupta2007/psiphon:latest
container_name: psiphon
depends_on:
- multitor
environment:
- PUID=1000
- PGID=1000
volumes:
- ./psiphon:/config:Z
ports:
- "1080:1080" # Psiphon SOCKS
- "8080:8080" # Psiphon HTTP
restart: always
# Note 1: Doesn't Work As Tor Socks5 Doesn't Support UDP Protocol.
# Note 2: But It May Work With Psiphon
# warp:
# build: ./warp
# container_name: warp
# depends_on:
# - psiphon
# ports:
# - "8086:8086" # WARP SOCKS5 Proxy
# cap_add:
# - NET_ADMIN # Required to create TUN device and manage routing
# devices:
# - /dev/net/tun # Required to mount the TUN device
# restart: always
### Note: UDP VPN Services Such As Wireguard And OpenVPN UDP Can't Be Used Due to Tor Socks5 Lack Of UDP Support; Only TCP VPNs Such As OpenVPN TCP And SSH And TCP Proxies Will Work. ###