This Dockerfile build an image for shadowsocks-libev with simple-obfs, based on Alpine Linux.
Current version:
- shadowsocks-libev: v3.1.3
- simple-obfs: v0.0.5
Get the docker image by running the following commands:
docker pull acrisliu/shadowsocks-libev
Start a instance:
docker run -d --name=shadowsocks-libev -p 3389:8388/tcp -p 3389:8388/udp --restart=always acrisliu/shadowsocks-libev
Server host: 0.0.0.0
Server port: 8388
Password: shadowsocks
Encrypt method: chacha20-ietf-poly1305
Timeout: 600
DNS: 8.8.8.8
Plugin: obfs-server
Plugin options: obfs=tls
--plugin obfs-server
--plugin-opts "obfs=tls"
On the client, use this configuration:
--plugin obfs-local
--plugin-opts "obfs=tls;obfs-host=www.bing.com"
You can use environment variables to specific configration.
For example with encrypt method aes-256-cfb
and password MyPassword
:
docker run -e ENCRYPT_METHOD=aes-256-cfb -e PASSWORD=MyPassword -d --name=shadowsocks-libev -p 3389:8388/tcp -p 3389:8388/udp --restart=always acrisliu/shadowsocks-libev
Available environment variables:
SERVER_HOST
: Host name or ip address of your remote serverSERVER_PORT
: Port number of your remote serverPASSWORD
: Password of your remote serverENCRYPT_METHOD
: Encrypt methodTIMEOUT
: Socket timeout in secondsDNS_ADDR
: Setup name servers for internal DNS resolverPLUGIN
: Enable SIP003 pluginPLUGIN_OPTS
: Set SIP003 plugin options
Just use boellow commands:
# Pull the latest image
docker pull acrisliu/shadowsocks-libev
# Stop and remove old container
docker stop shadowsocks-libev
docker rm shadowsocks-libev
# Start a new container with latest image
docker run -d --name=shadowsocks-libev -p 3389:8388/tcp -p 3389:8388/udp --restart=always acrisliu/shadowsocks-libev