0%

本地Dockers部署ngrokd服务

最近国内的连ngrok的被封了。对于需要将本地web服务映射到外网的用户来说就是一件麻烦事了。

如果自己有vps,可以试一下自己搭建一个ngrokd的服务,因为我喜欢docker服务,我就抛砖引玉写一下吧。具体的过程可以看这里 http://blog.sequenceiq.com/blog/2014/10/09/ngrok-docker/

首先,先给自己的自己添加A纪录,例如ngrok.yourdomain.com和*.ngrok.yourdomain.com

然后,这是跑docker的脚本,其中80端口是http端口,443是https,4443是用来客户端和服务器端通信用的管理端口。

1
2
3
4
5
6
7
8
docker run -d --name ngrokd \
-p 80:80 \
-p 443:443 \
-p 4443:4443 \
sequenceiq/ngrokd \
-httpAddr=:80 \
-httpsAddr=:443 \
-domain=ngrok.yourdomain.com

接着,在客户端下载对应版本的ngrok

1
2
curl -o /usr/local/bin/ngrok https://s3-eu-west-1.amazonaws.com/sequenceiq/ngrok_linux
chmod +x /usr/local/bin/ngrok

最后,在客户端保存配置连接到服务器的配置文件

1
2
3
4
cat > ~/.ngrok <<EOF
server_addr: ngrok.yourdomain.com:4443
trust_host_root_certs: false
EOF

全部都好了,现在可以直接连接了(这里暴露8000端口给外网)

1
ngrok -subdomain=docker 8000