macOS v2ray-core 多开 & supervisor 配置

2018/3/15 posted in  DevOps comments

最开始使用 https://github.com/Cenmrev/V2RayX 项目在macOS下跑
遇到经常断开,升级会覆盖配置文件

所以直接使用v2ray-core在命令行跑, surge拿来分流

使用 supervisor 管理服务

supervisor 安装,要求使用python2

sudo pip2 install supervisor

生成配置文件

echo_supervisord_conf > /usr/local/etc/supervisord.conf

自己的配置文件放在 /usr/local/etc/supervisor.d/

设置include

[include]
files = /usr/local/etc/supervisor.d/*.conf

supervisor 的 命令有两个

  • supervisord supervisor自身服务的启动
  • supervisorctl 管理自己配置的服务

为了方便在surge中切换服务器,每个服务器开一个v2ray-core客户端

所以 supervisord 配置文件看起来类似这样,每个客户端一个配置

配置文件示例

[program:svip21]
command=v2ray -config /usr/local/etc/supervisor.d/svip21.json
autostart=true
autorestart=true

每个客户端开放的sock5 端口不同,修改 port 确保不同的客户端 端口不同

  "inbound": {
    "port": 1083,
    "listen": "127.0.0.1",
    "protocol": "socks",
    "settings": {
      "auth": "noauth",
      "udp": false,
      "ip": "127.0.0.1"
    }
  },

配置好之后运行 supervisord 启动supervisor,

测试的话可以使用-n

-n/--nodaemon -- run in the foreground (same as 'nodaemon=true' in config file)

surge 配置

surge 中配置socks5

🇭🇰svip21.v2 = socks5, 127.0.0.1, 1081, ,
🇭🇰svip22.v2 = socks5, 127.0.0.1, 1082, , 
🇭🇰svip23.v2 = socks5, 127.0.0.1, 1083, , 

在surge中可以方便切换不同的服务器