一直忙的要死,趁着周末终于有时间写点东西。最近steemit趋于稳定,作为back up的 CNsteem也没有做太多更新。
过去一周,有30多人在CNsteem尝试注册,其中12人注册成功。我代理出去的steem power也达到了300多刀。
当时没有意识到,注册账号代理出去的Steem Power要1个月才能收回,再这样下去,很快就无法维持了。我还没有时间去想其他办法,未来有可能单独开一个服务,加一点付费模式,比如支付宝付款5元才能注册..
但授人以鱼不如授人以渔,简单记录下搭建和维护CNsteem的过程,有兴趣的自己也可以试试。
域名购买
我在namesilo购买了cnsteem.com这个域名,相比于godaddy, namesilo还是比较便宜的,这个域名一年大约9刀。域名也可以在国内的腾讯云,阿里云购买。
VPS购买
我使用的是阿里云International版,以前的这篇文章里有介绍,仔细看了一下,一个月大约花费22刀。
域名解析
为了加快DNS的解析速度,使用了DNSpod的VIP服务,效果貌似还不错,价格半年大约90人民币。
代码管理
使用了Github的Public Repo,完全免费。代码是从 steemit/condenser Fork的。主要用以下命令与upstream进行同步:
# 添加upstream
git remote add upstream https://github.com/steemit/condenser.git
# 获取更新的代码
git fetch upstream
# Merge代码
git merge upstream/master
Nginx + Https
Nignx配置花费了一段时间,最后配合Letsencrypt 终于形成了一个比较稳定的版本。
最终版的配置文件也放在了Github上,点此查看
中文翻译
最初搭建CNsteem的时候,我用一晚上就把steemit翻译成了中文,其实主要是Google API的功劳。我写了一个程序,可以自动将steemit提供的en.json 翻译成 zh.json,但使用前,你需要去Google API注册一个Translation Key。
后期对翻译出来的文件做了人工审查和修改,其中翻译后的占位符细节处理,需要参考这里
邮件发送
使用了和steemit一样的邮件发送服务:Sendgrid, 试用期可以免费发送4万封。但我记得Sendgrid对国内邮箱deliver不好,有时候无法接收到,后期可以换成Mailgun,效果更好一些。
另外注册用户Approve后的邮件需要手动发送,我也写了一个小工具
Full Node选择
这里:http://www.steemreports.com/steem-rpc-monitor/ 可以看到每个Public Full Node的稳定性,我一般使用延迟最低的那个,最近steemit官方的还算不错。
Production Config
最最重要的是如何配置steemit的Producton Config,它在config/production.json下边。我大部分时间都花在调试这个上边了,我使用的Sample Config在这里
部署过程
官方ReadMe上有详细的步骤,不过要建立中文steemit的话,你需要clone我的这个repo。
结尾
上述涵盖了从头到尾搭建和维护CNsteem的全部过程,一步步做的话,你也可以搭建一个同样的网站。
(picture from pixabay)
感谢 cnsteem~ 大赞呀~
fullnode 连接不稳定的问题, 不知 steemit 是否支持连接 p2p node, 可以的话自己运行一个 p2p node 应该能更稳定些.
你可以看看我之前的一篇文章,运行一个full node一个月要200刀
我是说 p2p node, 不是 witness, 只需要 2G 内存就可以跑了. 但是可以让 cnsteem 更稳定用户量更多些
你说的是Seed Node,那个只对广播交易作用比较大,用户大部分主要看帖子,帖子的数据是通过websocket从full node取的
cnsteem 是我们的福音 赞赞赞
要是搞一个类似busy的点赞机器人,用的人就多了。
用的人多了之后,我也就快承担不了了..
太棒了
满血点赞!我的朋友通过cnsteem 申请通过了,谢谢!
好奇你从事的是什么?
程序员,哈哈
感谢分享
太感谢了,解决了我最近遇到的好多问题
真是个大神
支持适当收费
我考虑加个小额赞助..
我觉得你可能是下一个马云…能做朋友吗?
这是我觉得自己被黑的最惨的一次。。
hi..all
原来如此,还好有你的快速注册,两美元花的值。
哈哈,多写好文章,挣回来!
我特别想探究下怎么实现的,想不到skenan全部都开源了,特别棒,特别棒,我还想着在本地虚拟机里部署一个,看来不行,域名绑定就是问题,有时间尝试部署一下,应该还是挺好玩的。
本地也可以部署的