我开源了一个私人云盘——蓝眼云盘

2018-01-16 11:25:44 +08:00
 zicla

蓝眼云盘

在线 Demo (体验账号: demo@tank.eyeblue.cn 密码:123456)

后端 tank 地址

前端 tank-front 地址

简介

蓝眼云盘是 蓝眼系列开源软件 之一,也是蓝眼系列其他软件的基础服务软件。蓝眼博客具有以下几大特色:

1. 软件体积小,跨平台,运行简单

2. 使用方便,核心功能齐全

3. 支持接口编程

4. 前后端分离,文档丰富

如果您觉得蓝眼云盘对您有帮助,请不要吝惜您的 star

软件截图

安装

** a) 准备工作 **

  1. 一台 windows/linux 服务器,当然你可以使用自己的电脑充当这台服务器

  2. 安装好 Mysql 数据库

  3. 在这里下载服务器对应的安装包

  4. 在服务器上解压缩,修改配置文件conf/tank.json,各项说明如下:

{
   //服务器运行的端口,默认 6010。如果配置为 80,则可直接用 http 打开
  "ServerPort": 6010,
  //日志是否需要打印到控制台,默认 false,主要用于调试
  "LogToConsole": false,
  //Mysql 端口,默认 3306
  "MysqlPort": 3306,
  //Mysql 主机
  "MysqlHost": "127.0.0.1",
  //Mysql 数据库名称
  "MysqlSchema": "tank",
  //Mysql 用户名,建议为蓝眼云盘创建一个用户,不建议使用 root
  "MysqlUserName": "tank",
  //Mysql 密码
  "MysqlPassword": "tank123",
  //超级管理员用户名,只能是字母和数字
  "AdminUsername": "admin",
  //超级管理员邮箱,作为登录的账号
  "AdminEmail": "admin@tank.eyeblue.cn",
  //超级管理员密码
  "AdminPassword": "123456"
}

** b) 运行 **

cd 应用目录路径
./tank

如果你希望关闭 shell 窗口后,应用依然运行,请使用以下脚本启动和停止

# 启动应用
cd 应用目录路径 /service
./startup.sh

# 停止应用
cd 应用目录路径 /service
./shutdown.sh

** c) 验证 **

浏览器中打开 http://127.0.0.1:6010 (127.0.0.1 请使用服务器所在 ip,6010 请使用tank.json中配置的ServerPort) 可以看到登录页面,并且使用配置文件中的邮箱和密码登录成功后可以看到全部文件(见上文截图)即表示安装成功。

使用源代码自行打包

前端项目打包

  1. clone tank-front

  2. 安装依赖项

npm install
  1. 执行打包命令
npm run build
  1. 通过前面三步可以在dist文件夹下得到打包后的静态文件,将dist目录下的所有文件拷贝到后端项目的build/html文件夹下。(下文的工程目录中也有说明)

后端项目打包

  1. clone tank

  2. 安装 Golang,环境变量GOPATH配置到工程目录,建议工程目录结构如下:

golang                       #环境变量 GOPATH 所在路径
├── bin                      #编译生成的可执行文件目录
├── pkg                      #编译生成第三方库
├── src                      #golang 工程源代码
│   ├── github.com           #来自 github 的第三方库
│   ├── golang.org           #来自 golang.org 的第三方库
│   ├── tank                 #clone 下来的 tank 根目录
│   │   ├── build            #用来辅助打包的文件夹
│   │   │   ├── conf         #默认的配置文件
│   │   │   ├── doc          #文档
│   │   │   ├── html         #前端静态资源,从项目 tank-front 编译获得
│   │   │   ├── pack         #打包的脚本
│   │   │   ├── service      #将 tank 当作服务启动的脚本
│   │   ├── dist             #运行打包脚本后获得的安装包目录
│   │   ├── rest             #golang 源代码
      
  1. 准备项目依赖的第三方库

其中golang.org/x国内无法下载,请从这里下载,并按上文推荐的目录结构放置。其余依赖项均可通过安装脚本自动下载。

  1. 打包
cd tank/build/pack/
./build.sh

成功之后可在tank/dist下看到tank-x.x.x.linux-amd64.tar.gz

利用得到的安装包即可参考上文的安装一节进行安装。

相关文档

蓝眼云盘后端 api

蓝眼云盘编程接口

Contribution

感谢所有蓝眼云盘的贡献者 @zicla@seaheart@yemuhe@hxsherry

如果您也想参与进来,请尽情的 fork, star, post issue, pull requests

License

MIT

Copyright (c) 2017-present, eyeblue.cn

注: 原文发布于蓝眼博客 http://blog.eyeblue.cn/home/article/8953d493-f80a-4be0-bde2-50d3c5747430

14283 次点击
所在节点    开源软件
63 条回复
zicla
2018-01-16 15:42:39 +08:00
这些来体验的小伙伴真的很皮,有一个上传色情图片的,有一个创建了十几层“新建文件夹”
cnbattle
2018-01-16 15:43:51 +08:00
收藏,有时间折腾了,正好也在学习 go
mokeyjay
2018-01-16 15:46:19 +08:00
@terrytw #18
@zicla #9 不,是有人创建了带色情 url 的文件夹……
zachgenius
2018-01-16 16:21:22 +08:00
不错!!!1
nealwx
2018-01-16 17:43:02 +08:00
咦, 怎么登不进了
fyibmsd
2018-01-16 18:02:02 +08:00
离线下载有吗
zicla
2018-01-16 18:08:38 +08:00
@nealwx 被其他皮孩子把密码给改了,我已经改回去了。123456
zicla
2018-01-16 18:09:59 +08:00
@fyibmsd 自己部署后,存在服务器上的东西就相当于已经离线下载好了,下载速度完全取决于你的服务器带宽了。
shawn7
2018-01-16 18:13:45 +08:00
赞,晚上回去体验一下
Hallujah
2018-01-16 18:33:07 +08:00
看着挺好的,鼓励一下,加油。
zicla
2018-01-16 18:43:00 +08:00
@Hallujah 谢谢支持鼓励 ^_^
zicla
2018-01-16 18:43:17 +08:00
@shawn7 谢谢鼓励支持~
SKull4
2018-01-16 19:29:01 +08:00
前排顶帖,支持爽哥
natforum
2018-01-16 19:55:38 +08:00
呲磁
zicla
2018-01-16 19:57:50 +08:00
@SKull4 老铁你也是贡献者啊,用你的 simba 啊
Tink
2018-01-16 21:57:05 +08:00
感觉挺好,极简至上
closedevice
2018-01-16 22:05:11 +08:00
我想知道怎么一个人搞定全平台的
zicla
2018-01-16 22:17:23 +08:00
@closedevice 目标是全栈工程师嘛,我打主力,还有三个小伙伴协作完成的。
zicla
2018-01-16 22:18:35 +08:00
@Tink 对,特色就是小而精,没有那些花哨的功能,谢谢认同
beiposhiming
2018-01-16 22:18:39 +08:00
不错!

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

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

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

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

© 2021 V2EX