Rikka 更新辣 支持七牛云了

2016-09-11 17:20:24 +08:00
 7sDream

简介

额,可能大家都不知道 Rikka ,见我上次的帖子: https://www.v2ex.com/t/303578

简单来说 Rikka 是个 「个人图床系统」,好吧我知道很多人写过这种了(比如很好用的 iPic )……然而,谁叫我刚学 Golang 呢,随便找了个项目当 Helloworld 而已。

最开始的 Rikka 只是个小项目,只能把文件储存在当前服务器,然后开一个静态文件 Handler 来提供这些图片。后来我想了想,把储存后端变成了插件的形式,这样可以支持储存在不同的服务里,便于后期加插件。

然后这几天把七牛云的插件写完了,我自己基本上就准备长期使用了。

对了, Rikka 是发布了 Docker 镜像的,自己部署起来超级方便!

Demo 截图

随便在 DaoCloud 上部署了两个:

使用默认 FS 插件的 Demo : http://7sdream-rikka-demo.daoapp.io/

使用七牛云插件的 Demo : http://7sdream-rikka-qiniu.daoapp.io/

密码都是 rikka

首页截图:

预览页面截图:

从前端是看不出什么不同的,但是你上传一张文件之后从给出的图片源地址就能看出不同了。

CLI

Rikka 带了一个 CLI ,叫 Rikkac 使用效果如下:

Rikkac 的文档: https://github.com/7sDream/rikka/blob/master/rikkac/README.zh.md

源码

很早就在 Github 上了: https://github.com/7sDream/rikka

Web 前端, Web 后端, RESTful API 定义, API Server ,插件, Rikkac CLI 都在这。

文档

基本上中文英文都写了,但是英文有点拙计,这里放中文的。

README : https://github.com/7sDream/rikka/blob/master/README.zh.md

部署文档: https://github.com/7sDream/rikka/blob/master/deploy.zh.md

DaoCloud 部署教程:

计划

后面的计划的话,首先是支持 https ,然后是新浪微博插件,如果有人需要的话。然后是上传请求的 CSRF ,以及请求限制,自动 ban IP 。

敬请期待。

PS :

感觉还是挺全栈的一个项目吧,如果是新学 Golang 的小伙伴应该可以看看,能学到一些的,比如插件架构之类的。

然后请各大 Golang 大神如果感兴趣的话,指导一下就更好了!谢谢。

2954 次点击
所在节点    Go 编程语言
48 条回复
7sDream
2016-09-12 15:15:58 +08:00
@majinjing3

恩,虽然目前的架构师单插件模式, ID 由插件负责生成,但是我想了一下改成同时多插件模式也并没有太大的难度,所以直接多个源上传如果需要是可以写的。

但是后面这个

「或者直接加载,这样可以首先加载微博,然后再是 FS ,七牛,(省流量嘛。。。。」

这一段是要干啥我没太看懂……是说预览页面的加载么?
douyang
2016-09-12 16:13:30 +08:00
7sDream
2016-09-12 16:38:18 +08:00
@douyang

这线路图有点恐怖……
majinjing3
2016-09-12 16:39:08 +08:00
@7sDream 后面这段是写给应用层自己处理的哈,只有有 api 可以调用就好了
7sDream
2016-09-12 16:42:15 +08:00
@majinjing3

那就懂了~~

我考虑一下吧,这个还是需要改插件架构和一些返回的 JSON 格式……
majinjing3
2016-09-12 18:36:46 +08:00
@7sDream 纯个人需求,小网站,图片较多,又不想花太多钱在存储上面,多几个源,做冗余,加载图片的时候,网页端检查可用性,就好了,
另外,如果有时间,我也可以帮忙写写代码,也一直在关注 golang
Arnie97
2016-09-13 00:00:48 +08:00
客户端应该叫 Yuuta ,哈哈哈
7sDream
2016-09-13 00:24:11 +08:00
@Arnie97 是的呀卧槽!我咋给忘了捏…其实我之前想的是下一个项目叫 yuuta 的来着…但是客户端叫 yuuta 的话会有一种奇妙的有趣的意味呢~嘿咻

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/305481

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX