開源私有云盤

版權聲明:本文爲博主原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
本文鏈接:https://blog.csdn.net/lishmoshou/article/details/79072886
 

藍眼雲盤
在線Demo (體驗賬號: [email protected] 密碼:123456)

 後端tank地址

 前端tank-front地址

簡介
藍眼雲盤是 藍眼系列開源軟件 之一,也是藍眼系列其他軟件的基礎服務軟件。藍眼博客具有以下幾大特色:

1. 軟件體積小,跨平臺,運行簡單

藍眼雲盤[安裝包]((https://github.com/eyebluecn/tank/releases)6M左右,在windows linux mac OS操作系統中均可安裝運行;

藍眼雲盤爲綠色軟件,將安裝包解壓縮,修改配置文件後即可一行命令立即運行。

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

藍眼雲盤主要支持pc web端,同時手機web也具有不錯的響應性支持。

藍眼雲盤實現了雲盤(如:百度雲盤,微雲)的核心功能:文件夾管理,文件管理,上傳文件,下載文件,文件分享等。

藍眼雲盤提供能賬號管理系統,超級管理員可以管理用戶,查看用戶文件,普通用戶只能查看自己的文件,修改自己的資料。上面提供的體驗賬號就是一個普通用戶的賬號。

3. 支持接口編程

藍眼雲盤提供了編程接口,實現了雲存儲(如:七牛雲,阿里雲OSS)的核心功能,可以使用編程接口上傳文件,作爲其他網站、系統、app的資源存儲器。可以在下載圖片時對圖片做縮放裁剪處理,可以有效地節省客戶端流量。

藍眼系列開源軟件之二的《藍眼博客》正是使用藍眼博客作爲第三方資源存儲器。藍眼博客中的所有圖片,附件均是存儲在藍眼雲盤中。

4. 前後端分離,文檔豐富

項目後端使用golang開發,前端使用vue套件開發。

藍眼雲盤有詳細的後臺api文檔,對於學習前端的童鞋而言可以快速部署一個正式而又具有豐富接口的後端供學習使用。

後端技術棧使用 golang,沒有使用任何web框架;初始化安裝,生命週期控制,路由管理,路由匹配,日誌管理,依賴注入,錯誤處理,panic攔截,打包,安裝腳本等功能全採用純手動打造,綠色環保,因此代碼更精煉,更具有探討學習的價值。

如果您覺得藍眼雲盤對您有幫助,請不要吝惜您的star

軟件截圖


安裝
* a) 準備工作 *

一臺windows/linux服務器,當然你可以使用自己的電腦充當這臺服務器

安裝好Mysql數據庫

在這裏下載服務器對應的安裝包

在服務器上解壓縮,修改配置文件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": "[email protected]",
  //超級管理員密碼
  "AdminPassword": "123456"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
* b) 運行 *

windows平臺直接雙擊應用目錄下的tank.exe。

linux平臺執行

cd 應用目錄路徑
./tank
1
2
如果你希望關閉shell窗口後,應用依然運行,請使用以下腳本啓動和停止

# 啓動應用
cd 應用目錄路徑/service
./startup.sh

# 停止應用
cd 應用目錄路徑/service
./shutdown.sh
1
2
3
4
5
6
7
8
* c) 驗證 *

瀏覽器中打開 http://127.0.0.1:6010 (127.0.0.1請使用服務器所在ip,6010請使用tank.json中配置的ServerPort) 可以看到登錄頁面,並且使用配置文件中的郵箱和密碼登錄成功後可以看到全部文件(見上文截圖)即表示安裝成功。

使用源代碼自行打包
前端項目打包 
1. clone  tank-front

安裝依賴項
npm install
1
執行打包命令
npm run build
1
通過前面三步可以在dist文件夾下得到打包後的靜態文件,將dist目錄下的所有文件拷貝到後端項目的build/html文件夾下。(下文的工程目錄中也有說明)
後端項目打包

clone  tank

安裝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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
準備項目依賴的第三方庫

golang.org/x
github.com/disintegration/imaging
github.com/json-iterator/go
github.com/go-sql-driver/mysql
github.com/jinzhu/gorm
github.com/nu7hatch/gouuid
其中golang.org/x國內無法下載,請從這裏下載,並按上文推薦的目錄結構放置。其餘依賴項均可通過安裝腳本自動下載。

打包

windows平臺雙擊運行 tank/build/pack/build.bat,成功之後可在tank/dist下看到tank-x.x.x文件夾,該文件夾即爲最終安裝包。

linux平臺運行如下命令:

cd tank/build/pack/
./build.sh
1
2
成功之後可在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
————————————————
版權聲明:本文爲CSDN博主「lishmoshou」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/lishmoshou/article/details/79072886

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章