作者:小傅哥
部落格:https://bugstack.cn
沉澱、分享、成長,讓自己和他人都能有所收穫!?
一、前言
為啥要用自建網盤,市面上的雲盤不香了?
每一個使用者需求的背後都是因為有場景存在,而這些差異化的場景也都是因為不同的使用者型別產生的。
就像我作為技術號主想分享一些自己總結的資料,放到一些雲盤以後有時候會被其他不知道從哪冒出來的小夥伴給舉報,舉報連結就取消了,取消了連結也就影響了我的資料分享。同時我可能還希望我的分享內容能被記錄到下載次數、允許幾次下載、下載時是否要做一些引流動作等等。
所以類似這樣的特殊場景下就需要自建網盤來維護個人需要的資料,與之類似的還有一些公司或者組織都會建相對私域的網盤功能服務功能,給予內部使用者使用。
所以,也並不一定市面的網盤不香了,只是因為我有需要自建網盤。在這條路上我嘗試過自建、kodexplorer、Owncloud等,恰巧最近發現了 Cloudreve 嘗試體驗後感覺更香,支援的功能更多。所以準備給小夥伴分享下關於 Cloudreve 的安裝、配置和使用,也讓有需要的小夥伴可以嚐嚐鮮。
二、Cloudreve 介紹
Cloudreve,幫助您以最低的成本快速搭建公私兼備的網盤系統。
? 功能
✨ 特性
- ☁️ 支援本機、從機、七牛、阿里雲 OSS、騰訊雲 COS、又拍雲、OneDrive (包括世紀互聯版) 作為儲存端
- ? 上傳/下載 支援客戶端直傳,支援下載限速
- ? 可對接 Aria2 離線下載
- ? 線上 壓縮/解壓縮、多檔案打包下載
- ? 覆蓋全部儲存策略的 WebDAV 協議支援
- ⚡ 拖拽上傳、目錄上傳、流式上傳處理
- ?️ 檔案拖拽管理
- ??? 多使用者、使用者組
- ? 建立檔案、目錄的分享連結,可設定自動過期
- ?️?️ 視訊、影像、音訊、文字、Office 文件線上預覽
- ? 自定義配色、黑暗模式、PWA 應用、全站單頁應用
- ? All-In-One 打包,開箱即用
? 資料
- 官網:https://cloudreve.org
- 文件:https://docs.cloudreve.org/getting-started/install
- 社群:https://forum.cloudreve.org
- 原始碼:https://github.com/cloudreve/Cloudreve
- 演示:https://demo.cloudreve.org
三、環境準備
- 雲伺服器資源或本地伺服器,推薦騰訊雲輕量伺服器,內含寶塔元件,算是是幾個雲服務裡最簡單的:https://console.cloud.tencent.com/lighthouse/instance/index
- 已備案過的域名,如果不需要域名訪問,可以直接使用雲服務提供的公網IP
- Cloudreve安裝包:https://github.com/cloudreve/Cloudreve/releases
本章節的案例是基於騰訊雲的,如果你使用的是其他雲伺服器,找到對應的位置配置即可。這些雲服務使用方式基本大同小異,遇到問題可以聯絡對應的雲服務客服,不要聯絡我哈哈哈?
四、寶塔配置
寶塔是一個簡單好用的Linux/Windows伺服器運維管理皮膚,在寶塔後臺頁面上可以非常方便的安全軟體和配置環境。一般可以在雲伺服器上安裝寶塔,有一些廠商也把寶塔整合到自己的雲伺服器上了。
1. 獲取使用者名稱和密碼
- 地址:https://console.cloud.tencent.com/lighthouse/instance/detail?rid=8&id=lhins-90pixwzq&tab=application
- 進入服務的應用管理會看到
應用內軟體資訊:寶塔
,在這裡點選登入按鈕後,會獲取到寶塔的登入地址、使用者名稱和密碼資訊「這些資訊可以後期在寶塔後臺修改」。* Socket connection established * Last login: Sat Apr 10 09:33:50 2021 from 119.29.96.147 [lighthouse@VM-8-9-centos ~]$ sudo /etc/init.d/bt default ================================================================== BT-Panel default info! ================================================================== 外網皮膚地址: http://80.71.255.122:8888/cloudtencent 內網皮膚地址: http://10.0.8.9:8888/cloudtencent *以下僅為初始預設賬戶密碼,若無法登入請執行bt命令重置賬戶/密碼登入 username: 3kkjecc3 password: 3f7d2743018b If you cannot access the panel, release the following panel port [8888] in the security group 若無法訪問皮膚,請檢查防火牆/安全組是否有放行皮膚[8888]埠 ==================================================================
2. 8888 埠授權
- 在獲取到皮膚的使用者名稱和密碼後,還不能直接訪問,因為你的埠還沒有授權開通。
- 這時可以在雲服務平臺上,點選
防火牆
這個配置,新增 8888 埠。
3. 登入寶塔後臺
地址:http://80.71.255.122:8888/cloudtencent - 你需要更換為自己的地址
說明:在初次進入寶塔時會有一些提示和軟體安裝,選擇自己需要的安裝即可。
頁面:
五、服務安裝
在寶塔皮膚的左側選單欄有一個終端選單,點選進入是一個黑視窗,接下來我們就在這裡安裝整個服務。
1. 在寶塔終端檢視服務核心
因為不同雲服務下可能是 adm 或者 arm 架構,對應下載的 Cloudreve 也會有所不同 cloudreve_版本號_作業系統_CPU架構.tar.gz
,所以這裡我們需要使用 arch
命令檢視下服務資訊。
Last failed login: Sat Apr 10 11:38:41 CST 2021 from 194.165.16.68 on ssh:notty
There were 8 failed login attempts since the last successful login.
Last login: Sat Apr 10 09:57:33 2021 from 127.0.0.1
[root@VM-8-9-centos ~]# arch
x86_64
- x86_64:代表 amd64
- aarch64:代表 arm64
2. 下載和安裝
確定好我們的雲服務架構後,選擇對應的 Cloudreve 版本,複製地址。我的是:https://github.com/cloudreve/Cloudreve/releases/download/3.3.1/cloudreve_3.3.1_linux_amd64.tar.gz
安裝命令
mkdir /www/wwwroot/cloudreve # 建立一個新資料夾存放程式
cd /www/wwwroot/cloudreve # 進入這個資料夾
wget https://github.com/cloudreve/Cloudreve/releases/download/3.3.1/cloudreve_3.3.1_linux_amd64.tar.gz # 下載你複製的連結
tar -zxvf cloudreve_3.3.1_linux_amd64.tar.gz # 解壓獲取到的主程式
chmod +x ./cloudreve # 賦予執行許可權
./cloudreve # 啟動 Cloudreve
# 執行資訊擷取
[Info] 2021-04-10 10:39:59 初始化資料庫連線
[Info] 2021-04-10 10:39:59 開始進行資料庫初始化...
[Info] 2021-04-10 10:39:59 初始管理員賬號:admin@cloudreve.org
[Info] 2021-04-10 10:39:59 初始管理員密碼:U4BfStlm
[Info] 2021-04-10 10:40:00 資料庫初始化結束
[Info] 2021-04-10 10:40:00 初始化任務佇列,WorkerNum = 10
[Info] 2021-04-10 10:40:00 初始化定時任務...
[Info] 2021-04-10 10:40:00 當前執行模式:Master
[Info] 2021-04-10 10:40:00 開始監聽 :5212
- wget,替換為你的 Cloudreve 地址
- tar,是對應名稱一起替換
- 最後把這些命令複製到你的終端黑視窗,它就開始執行安裝了。安裝完成以後你會得到一個初始的使用者名稱和密碼,複製貼上儲存起來
3. 開放埠 5212
- Cloudreve 安裝完成以後,訪問地址為你的服務IP:5212,但此時5212並不能直接訪問還需要授權。
- 僅在寶塔後臺授權還不夠,還需要在雲服務平臺的防火牆進行授權,如下:
4. 登入服務
- 如果一切順利現在你就可以使用自己的網盤了,但有一點要知道如果你還需要設定域名,那麼這個時候先不要使用,先去設定域名,否則一些圖片在IP下上傳和在域名下上傳,分享是有問題的。
六、程式守護
其實在服務安裝完成後就已經可以正常使用了,但我們很難保證寶塔皮膚不被重啟或者出現異常時也難免要我們自己再啟動雲盤服務。那麼,就需要一個守護程式來自動重啟服務。
在寶塔皮膚的軟體商店中,找到 Supervisor
安裝。Supervisor是用Python開發的一套通用的程式管理程式,能將一個普通的命令列程式變為後臺daemon,並監控程式狀態,異常退出時能自動重啟。
1. Supervisor 配置
- 名稱:Cloudreve
- 啟動使用者:root 預設的
- 執行目錄:/www/wwwroot/cloudreve/
- 啟動命令:/www/wwwroot/cloudreve/cloudreve
2. Supervisor 啟動
- 配置守護程式後,點開寶塔皮膚右上角的重啟,進入後
重啟服務
- 重啟後再進入到寶塔皮膚就會看到守護程式已經在啟動了,現在啟動這個事就交給了 Supervisor 管理
七、配置域名
1. 解析域名
- 在配置域名之前,需要在你已經準備好的域名下配置一個A記錄解析,這樣後面才能配置反向代理。
2. 反向代理
- 點選寶塔皮膚左側選單中的
網站
按鈕,新增一個站點。站點裡的域名就是配置解析域名時的資訊,我的是pan.itedus.cn
- 配置完站點後就需要給這個站點設定一個反向代理,點選它的設定即可進入。在反向代理中新增並設定目標URL:127.0.0.1:5212
- 最後,如果你的域名已經解析完成,那麼現在你就可以通過域名訪問你的雲盤服務了,還可以上傳和分享檔案。例如我分享的檔案:http://pan.itedus.cn/s/qofO
八、資料庫切換
系統預設的資料庫是自帶的 SQLite,你可改為 Mysql,如下:
- 資料庫型別,目前支援 sqlite | mysql
Type = mysql - 使用者名稱
User = Cloudreve - 密碼
Password = Cloudreve - 資料庫地址
Host = 127.0.0.1 - 資料庫名稱
Name = Cloudreve - 資料表字首
TablePrefix = cd_
- 切換完記得使用命令的方式進行重啟,因為此時它需要重新建立賬號和密碼
- 如果你沒有看見賬號和密碼,那麼可以把建立的資料庫刪掉,重新來一次
九、總結
- 關於 Cloudreve 雲盤的安裝和使用就演示到這裡了,如果你感興趣也可以自己搭建一個。另外 Cloudreve 可以獲取到它的原始碼,在原始碼的基礎上可以新增一些想要的功能,比如在下載的時候設定為關注某些東西在下載等等。
- 除了 Cloudreve 雲盤還可以嘗試下有道雲,這個雲盤直接在簡單的伺服器上就可以直接安裝,也可以自動升級,使用起來會簡單一些。
- 無論是雲服務還是各類工具,多嘗試一些這樣的東西,可以給自己增加很多其他知識面的理解。也許弄著弄著,你就不只是一個簡單的CRUD開發工程師了,可能還是運維、產品、業務!