shadowsocks-heroku

Deploy shadowsocks server to Heroku.

Usage

Environment variable

Variable Default value Description
SS_PASSWORD freedom_is_not_free shadowsocks password
SS_ENCRYPT chacha20-ietf-poly1305 shadowsocks encrypt method
SS_PLUGIN xray-plugin shadowsocks sip003 plugin
SS_PLUGIN_OPTS server;fast-open;path=/ws shadowsocks sip003 plugin options

One-click deployment

Heroku Deploy

Manually deployment

# deploy
git clone https://github.com/pexcn/shadowsocks-heroku.git && cd shadowsocks-heroku
heroku login
heroku git:remote -a <app_name>
heroku stack:set container
git push heroku master

# check
heroku ps
heroku logs

Tips

#
# simple-obfs -> 80
#
# server
obfs=http;fast-open
# client
obfs=http;obfs-host=appname.herokuapp.com;fast-open

#
# v2ray-plugin/xray-plugin -> 443
#
# server
server;fast-open;path=/ws
# client
tls;fast-open;host=appname.herokuapp.com;path=/ws?ed=2048;mux=5;loglevel=none

#
# cloudflare workers code snippet
#
addEventListener(
  "fetch", event => {
    let url = new URL(event.request.url);
    url.hostname = "appname.herokuapp.com";
    let request = new Request(url, event.request);
    event.respondWith(
      fetch(request)
    )
  }
)

Credits