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 里面
server:
image: easypi/shadowsocks-libev
container_name: wd-ss
ports:
- "HOST_PORT:8388/tcp"
- "HOST_PORT:8388/udp"
environment:
- METHOD=aes-256-cfb
- PASSWORD=5ouMnqPyzseL
restart: always
需要配置的是 HOST_PORT
METHOD
PASSWORD
这三个变量, 然后我还指定了 container_name
方便以后的操作, 不指定会自动产生一个.
启动服务之后,可以使用 docker logs wd-ss
来看 log, 类似于下面, 这个 docker 启用了 udp relay 和 tcp fast open, 差不多也就够了.
2017-06-09 03:13:17 INFO: using tcp fast open
2017-06-09 03:13:17 INFO: UDP relay enabled
2017-06-09 03:13:17 INFO: initializing ciphers... aes-256-cfb
2017-06-09 03:13:17 INFO: using nameserver: 8.8.8.8
2017-06-09 03:13:17 INFO: tcp server listening at 0.0.0.0:8388
2017-06-09 03:13:17 INFO: udp server listening at 0.0.0.0:8388
2017-06-09 03:13:17 INFO: running from root user
如果想要开启更多选项, 可以在 compose 文件里面使用 command 自定义启动命令
command:
ss-server -s 0.0.0.0
-p 8338
-k 5C4D5403-31C9
-m aes-256-cfb
-t 30
--fast-open
-u
-a nobody
自己实验过程中, 如果可以随时删除自己的 container 重建, 将来 ss 升级的话, 只需要把 image 更新一下,然后删除再新建一下 container 就好了.用起来还是相当简单方便的.