4/05/2017

部署go-gost到arukas、heroku、openshift 等paas平台

一、docker部署到arukas
1、docker镜像wangyi2005/gost-ws源码编译,镜像自动生成。
2、设置环境变量MODE:设置为ws或http(默认ws),可多开实例,均衡负载。
3、gost客户端  -F wss://Endpoint:443或 tls://Endpoint:443
4、chrome+SwitchyOmega 可直接设置https代理,Endpoint:443,无需运行gost。
5、利用sniproxy加速,修改hosts,Endpoint为sniproxy地址。

二、docker部署到openshift
1、deploy image到  poject。image name:wangyi2005/gost-ws,设置环境变量MODE为ws,tls、http2。三种方式都可以,要根据mode设置后面的route。
2、create route。route都要是https的secure route。
3.1 mode=ws(默认值),route type:edge。
3.2 mode=tls或http2,route type:passthrough。
以上两者的区别在于用哪个证书,前者用openshift的证书,后者用gost内置证书。内置证书浏览器是不认可的。
4、客户端设置。gost客户端 -F wss://route:443,tls://route:443,或者http2://route:443,当然如果你换成可信证书,tls和http2可以用chrome。
与arukas基本一样,只不过openshfit Endpoint中是secure route(类型是Edge)。
openshift Developer Preview,login with github,有30天和4 pods 限制,但是可以重复申请。
http2 多路复用,就是一个TCP连接撒。
有个证书问题,如果使用gost 内置证书,则不能在chrome 直接使用,需要签一个证书。

三、dropbox部署到heroku。(待实践)
1、下载gost源文件,只需要 cmd\gost 中文件
2、新建Procfile, web: gost -L ws://:$PORT 或http://:$PORT
3、heroku 中新建app 。
4、修改 vendor.json "rootPath"为 "github.com/ginuerzh/gost"
5、将cmd\gost 中文件、procfile,拷入dropbox\apps\heroku\app名称。
6、等文件上传后,点击部署。
7、gost客户端 -F wss://app-name.herokuapp.com:443
8、hosts 指向 sniproxy


gost客户端(win)使用:
客户端程序:https://github.com/ginuerzh/gost/releases 
解压目录下建一个批处理run.bat(无窗口)
@echo off 
if "%1" == "h" goto begin 
mshta vbscript:createobject("wscript.shell").run("%~nx0 h",0)(window.close)&&exit 
:begin
gost -L=:8080 -F=http2+kcp://vpsip:443
winrun.bat(有窗口)
gost -L=:8080 -F=http2+kcp://vpsip:443
Chrome+SwitchyOmega设置socks5/http代理, 端口8080.


更多运行方式参考:https://github.com/ginuerzh/gost

没有评论: