本博之前介绍过DaoCloud,让好多MJJ搭上了免费的车。但是后来DaoCloud各种限制,直到取消免费服务。
呃,然后就黄了…..
>> 再次玩转DaoCloud搭建自己的科(翻)学(墙)上网(已被封)
一年后,我们再看DaoCloud,有惊奇的发现。又能免费的了!
DaoCloud在功能上使用上都有一些不同。本文详细介绍一下。
官网地址
注册步骤
如果有账号,请跳过这部分吧。
填写一些基本信息即可注册了。也可以使用微信或者Github登录~
组织试用
首次登录会提示让开启30天试用。
因为要手机验证码,有兴趣可以试用一下。没兴趣可以取消。
下文中会有一些差别的介绍。
环境类型
自由主机
需要你有一台自己的服务器或者VPS。直接接入DaoCloud进行管理。
本文就暂不对这部分内容做介绍。
测试环境
云端测试环境是DaoCloud提供的临时Docker系统环境。
智能回收
测试环境-应用
提供免费资源供用户开发、测试使用。若想部署应用到生产环境,请使用自有主机功能。
长时间不使用的应用在特定情况下会被系统智能回收。
- 应用每 24 小时会自动停止
- 长时间不使用的资源(Volume、服务)在下述情况下会被系统智能回收(当前观察期为两周,视资源池使用情况会有变动)
- 在观察期内资源没有绑定任何应用
- 在观察期内资源绑定的应用没有执行 启动/发布 等更新操作
使用限制
端口限制
DaoCloud 部署测试镜像有端口限制。
- 最多支持3个TCP/UDP的映射。
- 只支持1个HTTP访问映射。
以上任选一个,不能同时使用。
对外端口,随机分配。无法自定义。
个人/组织限制
个人可创建3个应用,2个服务,1个数据卷。
组织可创建30个应用,10个服务,10个数据卷。且能直接上传镜像。
当然,组织是收费的,价格不便宜。
本文主要介绍个人的免费服务部分~
应用限制
测试环境应用每 24 小时会自动停止!
每个应用最大实例数量10个。
PS : 多个实例可以实现负载。
之前案例:http://51.ruyo.net/p/2058.html#11
部署演示
部署SSR
我们演示部署一个SSR~ 步骤比较详细。
有人问部署国内有啥用? 这个也算是国外友人的一个福利吧。
1)首先点击【发现镜像】,选择 【Docker Hub】搜索 malaohu/ssr-with-net-speeder
或者直接访问直达:https://dashboard.daocloud.io/packages/15ff48d8-10cf-4ab5-8555-da7bd619aa95
2)查看镜像详情,点击【部署】。
3)部署内容填写好,点击下一步。
有几个注意点。
- 版本一定要选择 lastest
- 不要选择胶囊主机,选择云端测试环境
4)填写应用端口和启动命令。然后立即部署
端口填写 8989 ,TCP协议,外部服务
启动命令 -s 0.0.0.0 -p 8989 -k RUYO.net -m rc4-md5 -o http_simple -O auth_sha1
启动命令的 8989 要和 端口填写的对应。
参数含义请参考:http://51.ruyo.net/p/2949.html#11
5)稍等一会,就部署完成了。
在右侧可见访问地址: 8989/TCP->RUYO_net.t1.daoapp.io:61564
其中 61564 就是服务器端口。
RUYO_net.t1.daoapp.io 就是服务器地址(IP)。
然后配置到SS客户端里,你就懂的啦~这里不再阐述。
部署中转代理
群里几个大佬,要求演示如何实现中转。只说重点,部署细节参考SSR部分。
中转的作用,能加快访问国外的$$服务~
访问镜像:https://dashboard.daocloud.io/packages/2c28004e-eb70-4974-82a1-e4056e6294d9
然后部署。
建议端口设置 80 ,TCP,TCP,外部服务
启动命令:TCP4-LISTEN:80,reuseaddr,fork TCP4:192.241.210.xxx:10851
请替换: 192.241.210.xxx:10851 成你的IP和端口即可。
更多说明:http://51.ruyo.net/p/2949.html#13
开放API
API地址:http://docs.daocloud.io/api/
1)首先要获取我们的API Token。【用户信息】-> 【API】-> API Token
或者访问:https://dashboard.daocloud.io/settings/profile
特别注意: 个人和组织 API Token 是不一样的!如果你的应用是在个人下创建,那么一定要使用个人API Token。
API 的功能比较全,可以自行研究一下。
API 请求的时候,只需要将 Token 放到请求头即可。
24小时停止?
由于是测试环境,会24小时自动停止。
怎么办? 手动重启一下? 不用~
我们可以利用Daocloud 开放API 即可实现自动重启。
接口详情,请看API 文档。
获取APPID
点开查看一个应用,地址栏可见
重启接口
本人自己写了一个简单的重启接口。
需要传 APPID 和 API Token
下面的地址,替换自己的信息即可~
appid 替换自己应用ID
token 替换自己Token
https://dsproxy-malaohu.rhcloud.com/http/daocloud/restart/appid/token
目测 Token 不可更换,泄露Token的话,别人可以访问你的所有应用资源。
怕我收集你的Token的话,请自己抄下面的代码(nodejs)自己部署一个重启服务。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
var request = require('request'); //重启DaoCloud app.get('/http/daocloud/restart/:appid/:token',function(req, res){ var appid = req.params.appid; var token = req.params.token; request({ method: 'POST', url:"https://openapi.daocloud.io/v1/apps/"+ appid +"/actions/restart", headers: {"Authorization": token}}, function (error, response, body) { if(error) res.send(error); else res.send(body); }); |
定时调用
网上有好多免费的监控网址的服务,直接监控上面的重启接口即可。
最近比较喜欢 ifttt东东,轻松几步配置,触发条件 和 触发动作~
所以我演示一下,怎么利用 ifttt来定时调用接口。
注册账号部分不演示了,自己弄。
1)访问 https://ifttt.com/create
即可创建一个 Applet(小程序)。
ifttt创建小程序很方便,简单配置几下即可完成了。
纯纯的小白,分分钟变码农~
2) 选择触发方式【Date&Time】。设置我们要触发的时间,然后点击创建!
3)然后点击【+that】, 添加触发的响应。
4) 搜索 【web】 选择 Maker Webhooks 。
5)填写内容。然后点击创建。
URL :直接把重启接口地址粘贴进去。
Methed : Get
Centont Type : text/plan
6)完成~~
其他福利
DaoCloud 还提供了 Redis、MySql、PostgreSQL、MongoDB、InfluxDB、Volume 服务。
有兴趣的可以试一试~
说在最后
内容比较多,按步骤一步一步的来即可。没有那么复杂。
有不懂的可以留言,我尽量回复。
如果文章或者评论有提到的东西,我就不回复了。
比较感兴趣怎么在daocloud上搭重启接口
请问可以详细介绍一下如何搭建nodejs服务吗?谢谢
请问我部署了SSR,在电脑上可以翻,手机上为什么翻不了?(手机上用的是小火箭)
我也是用小火箭,可以翻。可能是设置没对。而且服务器有时候不是太稳定,测一下延迟看有没有响应
访问地址那里是空的, 每次都是换端口号来回试好几次才行,咋回事?
现在daocloud 搭建出来都是国内的服务器了
重启基本都是internal_error,接口能不能做成重新发布(latest)?
云监工 是啥?
-s 0.0.0.0 -p 8989 -k i7s.me -m rc4-md5 -o http_simple -O auth_sha1
大佬这个代码写错了,应该是
-s 0.0.0.0 -p 8989 -k i7s.me -m rc4-md5 -o http_simple -O auth_sha1_v4
后面的协议不完整,我折腾了大半天才发现
部署ssr后应用可运行,但没有显示端口怎么办
你的 这个坏了 请修复下 https://dsproxy-malaohu.rhcloud.com/http/daocloud/restart/appid/token
另外如果我要部署的话,怎样弄?是经以上代码保存为index.js 存放在 /var/lib/openshift/59014064XXX1e66800e00000b/app-root/runtime/repo 里面吗?
不是坏了,是请求次数太多,被daocloud禁止IP了。自己搭建一个吧
请问怎么搭建,我用openshift搭了个nodejs环境,请问怎样部署?
请提供下:package.json 和相应文件。
关于nodejs代码,能否部署到免费的azure呢?
到目前为止,配置后,等待15分钟后提示创建失败,疑似被封。
地址,端口,协议都按上面填写好了 就是上不去。唯一不一样的是auth_sha1。ssr里没有这个 我就选的auth_sha1-v4.其他都正确了,就是上不去
不知道auth_sha1-v4 和 auth_sha1 是同一个么?
建议下载一个老的 SSR 试一试~
ucloud.cn 是出不去的
为什么我部署后访问地址不一样?没有端口~
端口填写的时,全部选择TCP协议和外部服务
好像被限速了,最快只有100多k
速度是有限制,以前不限制的灵雀云早就转型。另外破24小时停止,直接路由器群晖用curl按照api规范写,crontab定时运行下就可以了,没必要那么大动干戈
哈哈,好多兄弟没有那么高级的东西。就没介绍Crontab
今天早上看了一下,速度确实限制100kb左右!
上行和下行都有限制。
SSR密码怎么部署啊?
参数含义请参考:http://51.ruyo.net/p/2949.html#11
这里搞明白了,但还是连不上 ping值也可以测。这是日志
[App/0] 2017-04-12 15:55:19 ERROR tcprelay.py:989 can not parse header when handling connection from 10.10.240.154:60757
2017-04-12 23:55:19:[App/0] 2017-04-12 15:55:19 WARNING common.py:236 unsupported addrtype 69, maybe wrong password or encryption method
2017-04-12 23:55:19:[App/0] 2017-04-12 15:55:19 WARNING tcprelay.py:466 Protocol ERROR, TCP ogn data 4bf48b7a1b6e0a27b8766b94366d6897fa44d8c9aeadd49dfe766b132fbdef783df419d0db0c8508b25ccffcfb1ebba39e384d2bb7f62fb6c994d679aa589488870f2bb02531a551965245f8b32268ff1c197ffde24e69295c5e37d1812935e3f20856f049ec823122681ebccb8a638d324a5e35b25eee29245b08d99750ca51f30243d19f4c7a0273fa128a02c370e3b1f5f449bca17846872e4cc0105bcb1347dc31b310b5c395636eab5a66f9cfb6276b2efd234a0b3bdbb96efcb995e7184bb8eb34060ce9136ed63e416b95a1dda1682c6d206cb03ffbc69ae7baa77aa77e1f9a17c3f5027200cb6b2c115eb8e9effd17ee437853e76478be58 from 10.10.240.154:60758 via port 8989 by UID 8989
加密不对??检查配置 和你部署的加密方式是否一致~
这个我确定是对的,我删了重新部署也不行,可以连接上但是出不去,只能访问国内。应用日志里面也是空的。
那个重启接口是啥
Look Good,Feel Good