拉取镜像
docker pull teddysun/shadowsocks-r
或者拉取基于 python:3.6-alpine 镜像制作的
docker pull teddysun/shadowsocks-r:alpine
创建 config 文件
比如在目录 /etc/shadowsocks-r 下创建 config.json,完整路径也就是 /etc/shadowsocks-r/config.json
范例内容如下:
{
     "server":"0.0.0.0",
     "server_ipv6":"::",
     "server_port":9000,
     "forbidden_port": "25",
     "local_address":"127.0.0.1",
     "local_port":1080,
     "password":"123wc@",
     "timeout":120,
     "method":"rc4-md5",
     "protocol":"auth_aes128_sha1",
     "protocol_param":"",
     "obfs":"http_simple_compatible",
     "obfs_param":"",
     "redirect":"",
     "dns_ipv6":false,
     "fast_open":true,
     "workers":1
 } 
ShadowsocksR 协议插件文档的含义,可以参考这个链接。
启动容器
在上面这个范例里,定义的端口是 9000,那么在启动容器时就需要将 9000 端口映射到宿主机的对外端口上。
启动命令:
docker run -d -p 15599:9000 -p 15599:9000/udp --name ssr -v /root/ssr:/etc/shadowsocks-r xctcc/ssr
{
    "server":"0.0.0.0",
    "server_ipv6":"::",
    "server_port":9000,
    "forbidden_port": "25",
    "local_address":"127.0.0.1",
    "local_port":1080,
    "password":"123wc@",
    "timeout":120,
    "method":"rc4-md5",
    "protocol":"auth_aes128_sha1",
    "protocol_param":"",
    "obfs":"http_simple_compatible",
    "obfs_param":"",
    "redirect":"",
    "dns_ipv6":false,
    "fast_open":true,
    "workers":1
} docker run -d -p 9000:9000 -p 9000:9000/udp --name ssr -v /etc/shadowsocks-r:/etc/shadowsocks-r teddysun/shadowsocks-r
启动 Tag 为 alpine 的镜像命令:
docker run -d -p 9000:9000 -p 9000:9000/udp --name ssr -v /etc/shadowsocks-r:/etc/shadowsocks-r teddysun/shadowsocks-r:alpine
注意:此处仅作为演示,不能同时执行上面的这两个启动命令,因为端口都是 9000,产生冲突了。一般我是推荐选 Tag 为 alpine 的镜像的,因为文件的体积会相对比较小。
