手把手教你搭建CNsteem

in #cn7 years ago (edited)

一直忙的要死,趁着周末终于有时间写点东西。最近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)

Sort:  

Very nice content, thanks for sharing

我特别想探究下怎么实现的,想不到skenan全部都开源了,特别棒,特别棒,我还想着在本地虚拟机里部署一个,看来不行,域名绑定就是问题,有时间尝试部署一下,应该还是挺好玩的。

本地也可以部署的

cnsteem 是我们的福音 赞赞赞

要是搞一个类似busy的点赞机器人,用的人就多了。

用的人多了之后,我也就快承担不了了..

满血点赞!我的朋友通过cnsteem 申请通过了,谢谢!

好奇你从事的是什么?

程序员,哈哈

感谢 cnsteem~ 大赞呀~
fullnode 连接不稳定的问题, 不知 steemit 是否支持连接 p2p node, 可以的话自己运行一个 p2p node 应该能更稳定些.

你可以看看我之前的一篇文章,运行一个full node一个月要200刀

我是说 p2p node, 不是 witness, 只需要 2G 内存就可以跑了. 但是可以让 cnsteem 更稳定用户量更多些

你说的是Seed Node,那个只对广播交易作用比较大,用户大部分主要看帖子,帖子的数据是通过websocket从full node取的

太感谢了,解决了我最近遇到的好多问题

真是个大神

Coin Marketplace

STEEM 0.18
TRX 0.14
JST 0.029
BTC 57979.07
ETH 3124.67
USDT 1.00
SBD 2.36