5分鐘自建NextCloud私有雲NAS:還有免費APP和WEB界面! (以Ups-Pi爲例)

什麼?只要5分鐘就能免費擁有一個像Synology NAS那樣有APP、可網頁圖形操作的私有雲NAS系統?是的,本文以 Ups-Pi 迷你伺服器爲例,也可應用在樹莓派一類運行Linux的單板電腦,都可以參考本文極速搭建一個全開源、全免費的Nextcloud 私有雲NAS。

Ups-Pi VPN+ Mini Server 多功能迷你VPN伺服器

Ups-Pi 不是已經有文件共享功能了嗎?

Ups-Pi VPN+本身已經搭配了 Samba爲底層的網路文件分享系統,但是在2024的今天,沒有個APP,沒有圖形化的網頁操作,怎麼看都太骨感了。有沒有一個“可視化、符合2024潮流”、而且免費開源的NAS方案?經過尋找和測試,我發現 Nextcloud這套系統十分適合 Ups-Pi!不僅只需5分鐘就能搭建成功,還把 Ups-Pi 的硬件性能發揮得更好。

什麼是Nextcloud?爲什麼是Nextcloud?

Nextcloud 是一個功能全面的開源NAS系統,可以讓你在自己的伺服器上搭建私有雲服務,實現Google Drive或者Dropbox一般的存儲、共享和同步文件,並且可以透過瀏覽器的WEB網頁界面或手機APP來上傳或下載這些文件。簡單來說,它就像是一個私人版的Google Drive或者Apple Cloud,但它有100%免費開源而且有全部的軟硬件控制權。Nextcloud更類似Synology / QNAP的自建NAS系統,但你可以在Ups-Pi 上免費安裝而不需要另外購買一部 NAS 硬體。

Nextcloud的網頁操作界面:

Nextcloud的網頁登錄界面
Nextcloud的管理界面

Nextcloud的手機操作界面以及超高評分:

Nextcloud的android app
Nextcloud 的 iPhone APP

不僅僅是文件分享,完整的Nextcloud 系統(官方稱 All-in-one, AIO)還支援多種擴展功能:

  • Nextcloud 高性能後端
  • Nextcloud Office(可選)
  • Nextcloud Talk的高性能後端和TURN伺服器(可選)
  • Nextcloud Talk 錄製伺服器(可選)
  • 備份方案(可選,基於BorgBackup)
  • Imaginary(可選,用於生成HEIC、HEIF、Illustrator、PDF、SVG、TIFF和WebP格式的預覽)
  • ClamAV(可選,Nextcloud的防病毒後端)
  • 全文檢索(可選)

Nextcloud可以根據自己的需求和硬件性能,自由選擇其功能套件。

安全性方面,Nextcloud也做得非常出色,提供了端到端加密和多重認證等多種安全措施,確保你的數據始終受到保護。

Nextcloud的硬件需求

Nextcloud現在提供了多種多樣的功能,要實現全部的功能在 Ups-Pi 這種單板電腦上是太吃力的。但如果單純是基本的NAS網路共享,根據官方資料只需要512MB內存就能運行。而Ups-Pi配備了2GB的內存,VPN服務基本不耗多少內存,所以有足夠的能力驅動Nextcloud NAS系統。

根據Ups-Pi的邊緣運算性能,本次我們只爲Ups-Pi 加裝基礎的NAS套件。

開始安裝NextCloud

Nextcloud的安裝方式

根據Nextcloud的官方文檔,Nextcloud有好幾種安裝方式:

  • Docker 容器方式安裝
  • NextCloudPi 安裝腳本
  • Snap 套件管理器 (本身已裝Snap系統可選)
  • 使用官方 Nextcloud All-in-One 安裝腳本 (會安裝多種插件,不適合單板電腦)
  • 使用VM虛擬機 (不適合單板電腦)

Ups-Pi VPN+ 本身已經安裝好 Docker 容器,所以最佳的安裝方式就介乎 Docker 和 NextcloudPi。由於 NextcloudPi的腳本是基於樹莓派開發,對 Ups-Pi VPN+ 的系統並沒有很好適配,所以 Docker 就是最好的選項。

利用Docker-Compose 一分鐘建立 NextCloud!

既然支援Docker,那麼利用 Docker-Compose 無疑是最方便的建立容器方式。以下是小U經過打磨的 Nextcloud docker-compose文件:

nextcloud-on-ups-pi/docker-compose.yaml at main · upsangel/nextcloud-on-ups-pi (github.com)

你只需要把這個 docker-compose.yaml 放置到 Ups-Pi 的一個自選目錄(建議使用Final Shell),然後cd到那個目錄,再輸入:

docker-compose up

屏幕就 bla bla bla的運行起來。你可以發現根據我們的設定,docker會先啓動db(數據庫)容器,然後再啓動app (nextcloud) 容器。

Nextcloud的運作需要有一個數據庫記錄文檔的“詳情”,例如誰擁有、什麼時候創建修改等等。因爲Nextcloud裡面內建的用戶系統不等同於Linux系統本身的用戶系統,所以數據庫必不可少。

這時候用瀏覽器訪問: upspivpn:8080 就能開啓登入頁面:

聰明的你不需要我再詳述就能完成基本的密碼設定等等,就可以進入到NAS的儲存主界面:

既然一分鐘就把Nextcloud 弄起來了,那剩下的4分鐘有什麼用?當然先要搞手機APP。

設定 NextCloud的手機APP

官方STORE下載地址

安裝完,運行按登錄,要求你輸入伺服器位置 upspivpn:8080 , 然後用戶名密碼就是剛才你設定的,就能順利進入 NAS主控界面:

是不是超簡單的?

好,又用了一分鐘。剩三分鐘,繼續下一步:如何在街外連線回Nextcloud。

透過 Tailscale 從外網訪問

Ups-Pi VPN+ 出貨時已經爲你於配對了 Tailscale VPN。如無意外, 你只需要開啓 Tailscale (但無需開啓Exit Node),用相同的方法,就可以連線回 Nextcloud。

能夠這麼方便的從外網訪問,原理是 Ups-Pi 在你的 Tailscale Network 的 machine name 叫做 “upspivpn”。所以,只需要開啓 Tailscale ,MagicDNS 就知道 upspivpn 是哪個節點,並幫你連線回家中的Ups-Pi。

Nextcloud上傳了的文件存放在哪?

小U一開始以爲Nextcloud的數據庫是類似 Object database那樣用,但是一看是SQL,應該不是,文件應該是“純文件“的形式存放。找了一下原來是在這裡,按用戶名分的:

注意千萬不要手動爲這個目錄上傳或修改文件,必須經過 Nextcloud界面處理。不然數據庫會崩。

允許用IP地址訪問

Nextcloud有一個很奇特的設定,他只允許你用第一次登錄的URL來訪問。我們一開始是用 upspivpn: 來訪問,那麼就不能透過 192.168.1.111 (假設這是 Ups-Pi的內網IP),來訪問。這在某些情況不方便,例如,如果你想把 Tailscale 的 upspivpn 節點分享給朋友,讓朋友連進你的 Nextcloud,那麼你就要允許用 Tailscale IP (例如 100.123.123.123)來訪問。修改的地方在 Nextcloud的設定文件:

在25行 array那裡,加入你想允許的地址,例如:

3 => '100.123.123.123'

透過 Samba 分享 Nextcloud 的儲存文件

很遺憾,Nextcloud本身不支援直接透過Samba分享文件。如果你的電視、盒子需要存取Nextcloud裡面的文件怎麼辦?最好是他們能安裝 Nextcloud的APP,但如果不行,必須透過Samba分享的話,也是有方法的。下面就以 Ups-Pi 爲例,本來桌面上就有一個 Share文件夾,是可以透過Samba分享的。

根據Nextcloud的指引,我們創建一個新的文件夾:

注意把他的擁有者改爲 www-data,然後把他的讀寫權限改爲 775。

爲什麼是775呢?因爲要防止我們透過SAMBA直接把文件上傳到這個文件夾,這會破壞Nextcloud的文件-數據庫聯動。這也是爲什麼Nextcloud不支援Samba的原因。簡單說,所有的文件修改、新增、刪除,都必須經過Nextcloud操作。

然後把這個文件夾映射給Docker Container,讓 NextCloud 的容器裡面有一個 /mnt/share的文件是 ”等同於“ 我們剛剛創建的文件夾:

然後在 Nextcloud APP中勾選 External Storage 選項,新增一個 local 的本地儲存,輸入剛剛 /mnt/share 的路徑(詳情請看Nextcloud的指引):

這樣子就能夠在 文件系統中看到一個 External Storage 的 Share,上傳到裡面的文件就能夠透過 Samba 分享出來。

結語:爲 Ups-Pi 增添新動力

Ups-Pi 是小U推出的第一款單板伺服器,基於 OrangePi 3B 開發。Pi板最好玩就是靈活拓展性高,只要你有想法,都可以在上面嘗試實現,比起一開始推出的Ups-Pi,現時小U爲Ups-Pi新加入的功能有:

  • Nextcloud 私有NAS系統 (本文)
  • 大陸「回國VPN」逆翻牆WIFI 系統(詳情連接
  • Ups-Woo 一插即用Woo-commerce網店系統(詳情連接

後續小U還會繼續開發更多的玩法!這些新功能讓Ups-Pi成為了不僅僅是一個單板伺服器,更是一個多功能的開發平台。不論你是想打造個人的雲端存儲系統,還是需要一個便捷的VPN解決方案,又或者是想快速建立自己的網店,Ups-Pi都能幫你輕鬆實現。小U團隊不僅在硬件上做了優化,還為用戶提供了豐富的軟件支持,讓你在使用過程中更加順暢和高效。無論你是技術愛好者、開發者,還是企業用戶,都可以期待Ups-Pi在未來的表現。希望大家能持續關注小U的最新動態,一同見證Ups-Pi的成長與進步。

歡迎你的留言討論:

你可以一針見血

by Upsangel
Logo