This repository contains sample Docker Compose files to run V2Ray upstream and bridge servers.
- Upstream Server: A server that has free access to the Internet.
- Bridge Server: A server that is available to clients and has access to the upstream server.
- Client: A user-side application with access to the bridge server.
(Client) <-> [ Bridge Server ] <-> [ Upstream Server ] <-> (Internet)
V2Ray uses the VMESS protocol as the primary protocol. The VMESS protocol requires UUIDs for security reasons (instead of passwords). We need two UUIDs for the two V2Ray servers (upstream and bridge servers).
You can generate UUIDs using:
- This Linux command:
cat /proc/sys/kernel/random/uuid
- This online tool: https://www.uuidgenerator.net
Sample generated UUIDs:
cfc3ac34-a70d-424e-b43c-33049cf4bf31
143d98d8-ac89-465a-acb5-d8d51e1f851f
To setup the upstream server:
- Copy the "v2ray-upstream-server" directory into the upstream server.
- Replace
<UPSTREAM-UUID>
in theconfig.json
file with one of the generated UUIDs. - Run
docker-compose up -d
.
To setup the bridge server:
- Copy the "v2ray-bridge-server" directory into the bridge server.
- Replace the following variables in the
config.json
file with appropriate values.<SHADOWSOCKS-PASSWORD>
: A password for Shadowsocks users like!FR33DoM!
.<BRIDGE-UUID>
: The generated UUID for the bridge server.<UPSTREAM-IP>
: The upstream server IP address like13.13.13.13
.<UPSTREAM-UUID>
: The used UUID for the upstream server.
- Run
docker-compose up -d
.
The bridge server exposes these proxy protocols:
- Shadowsocks
- VMESS
- HTTP
- SOCKS
Shadowsocks is a popular proxy protocol. You can find many client apps to use the Shadowsocks proxy on your devices. These are recommended client apps:
- Shadowsocks for macOS
- Shadowsocks for Linux
- Shadowsocks for Windows
- Shadowsocks for Android
- ShadowLink for iOS
Client configuration:
IP Address: <BRIDGE-IP>
Port: 1210
Encryption/Method/Algorithm: aes-128-gcm
Password: <SHADOWSOCKS-PASSWORD>
The VMESS proxy protocol is the recommended one. It's the primary protocol that V2Ray provides. These are recommended client apps:
Client configuration:
IP Address: <BRIDGE-IP>
Port: 1310
ID/UUID/UserID: <BRIDGE-UUID>
Alter ID: 10
Level: 0
Security/Method/Encryption: aes-128-gcm
Network: TCP
Moved here: HTTP_SOCKS_PROTOCOLS.md
This repository is kind of forked from v2ray-config-examples. Thanks to @xesina and other contributors.