Run ssserver on VPS
VPS 上面好早以前用过 docker 跑了一个 container 运行了一个 ssserver, 是从 debian 基本系统创建, 然后手动安装各种软件弄好的. 最近朋友升级了 docker, 那个工作有点问题了,就重新搞了一下, 发现现在好方便.
我用的是这里提供的 dockerfile https://github.com/EasyPi/docker-shadowsocks-libev, 他的例子里面使用了 docker-compose
来创建, 发现很简单, 不过遇到了一个问题, 说一下解决办法.
这个 docker 本地监听的端口是固定的 8388 不能修改, 例如 docker-compose.yml 里面
1server:
2 image: easypi/shadowsocks-libev
3 container_name: wd-ss
4 ports:
5 - "HOST_PORT:8388/tcp"
6 - "HOST_PORT:8388/udp"
7 environment:
8 - METHOD=aes-256-cfb
9 - PASSWORD=5ouMnqPyzseL
10 restart: always
需要配置的是 HOST_PORT
METHOD
PASSWORD
这三个变量, 然后我还指定了 container_name
方便以后的操作, 不指定会自动产生一个.
启动服务之后,可以使用 docker logs wd-ss
来看 log, 类似于下面, 这个 docker 启用了 udp relay 和 tcp fast open, 差不多也就够了.
1 2017-06-09 03:13:17 INFO: using tcp fast open
2 2017-06-09 03:13:17 INFO: UDP relay enabled
3 2017-06-09 03:13:17 INFO: initializing ciphers... aes-256-cfb
4 2017-06-09 03:13:17 INFO: using nameserver: 8.8.8.8
5 2017-06-09 03:13:17 INFO: tcp server listening at 0.0.0.0:8388
6 2017-06-09 03:13:17 INFO: udp server listening at 0.0.0.0:8388
7 2017-06-09 03:13:17 INFO: running from root user
如果想要开启更多选项, 可以在 compose 文件里面使用 command 自定义启动命令
1 command:
2 ss-server -s 0.0.0.0
3 -p 8338
4 -k 5C4D5403-31C9
5 -m aes-256-cfb
6 -t 30
7 --fast-open
8 -u
9 -a nobody
自己实验过程中, 如果可以随时删除自己的 container 重建, 将来 ss 升级的话, 只需要把 image 更新一下,然后删除再新建一下 container 就好了.用起来还是相当简单方便的.