Container Station搭建個人網盤Nextcloud(Mariadb)

一、Container Station

QNAP Container Station (軟件容器工作站) 支持 LXD 與 Docker?、Kata 等輕量級虛擬技術。您可在 QNAP NAS 上運行完整的 Linux? 虛擬機,并由 Docker? Hub/LXD 映像文件服務器在線軟件市場隨選下載來自全球各地的應用程序。

??具體的定義,大家可以去網上找,網絡上的linux、寶塔等中docker的相關操作,應該是可以在威聯通的Container Station中執行的。如果是命令行的形式,則可以用ssh登錄到威聯通,然后執行,操作是差不多的。

二、MariaDB安裝

??進入到App Center,點擊“全部的應用程序”,搜索“MariaDB”,安裝即可(我是安裝的最新的5.1.0.3.255)。


MariaDB安裝

??按提示一步步安裝好,端口一般都是3306。

三、phpMyAdmin安裝及nextcloud對應數據庫配置

(一)phpMyAdmin安裝

??操作同MariaDB安裝


phpMyAdmin安裝

(二)nextcloud對應數據庫配置

??其實大部分的網友根據網絡上的帖子(123步驟教程)安裝Nextcloud時會遇到無法連接數據庫問題,或者是被告知連接數據庫名/或密碼錯誤等問題,都在于使用phpMyAdmin創建數據庫時配置的不對。

無法連接數據庫問題

??網絡上幾乎所有的教程,都在使用phpMyAdmin配置MariaDB數據庫時,先創建數據庫,后創建數據庫用戶名,并勾選了全部權限,正確的做法應該是:直接點擊創建用戶,并勾選創建與用戶名相同的數據庫,取消勾選全部權限。
??進入phpMyAdmin管理界面,依次點擊:賬戶→新增用戶賬戶。

??接著正常輸入數據庫【用戶名】,【密碼】,并勾選【創建與用戶同名的數據庫并授予所有權限】,最后點擊右下角的【執行】。

??這樣數據庫就配置完了。

四、Container Station中部署nextcloud

(一)拉取鏡像

??在終端執行以下命令,拉取 Nextcloud 鏡像:

docker pull nextcloud

??拉取到的 Nextcloud 鏡像的 tag 是 latest,顯示以下信息即表示拉取成功:

Using default tag: latest
latest: Pulling from library/nextcloud
bc51dd8edc1b: Pull complete
a3224e2c3a89: Pull complete
be7a066df88f: Pull complete
bfdf741d72a9: Pull complete
a9e612a5f04c: Pull complete
c026d8d0e8cb: Pull complete
d94096c4941c: Pull complete
5a16031a7587: Pull complete
0cf1daf9efc0: Pull complete
b202acb13a6c: Pull complete
907001e30880: Pull complete
2e4b329c80b2: Pull complete
cd1ec92e7164: Pull complete
8cba435f5ca6: Pull complete
e15a177658f6: Pull complete
9b26736059ce: Pull complete
53dbece8c17a: Pull complete
07158f924c2a: Pull complete
5ea6266119b8: Pull complete
e377a8cc542f: Pull complete
5662efc30cde: Pull complete
Digest: >sha256:fa863d16c10387f4bae140bdd38f5591aa4b88f1292593d>cffa501b9e1a76e58
Status: Downloaded newer image for nextcloud:latest
docker.io/library/nextcloud:latest

(二)啟動容器

??執行以下命令,啟動 Nextcloud 容器(冒號左邊的80是本機也就是nas的端口 可以自己改一個,右邊的是docker對應的端口):

docker run -d --restart=always --name nextcloud -p 80:80 nextcloud

簡單解釋一下上述命令:

  • docker run :啟動一個容器
  • d:后臺運行容器
  • --restart=always:Docker 重啟的時候容器也會重啟
  • --name nextcloud:命名容器的 name 為 nextcloud,可以替代容器 id 使用
  • -p 80:80:將容器的 80 端口映射到服務器的 80 端口
  • nextcloud:要啟動的鏡像名稱

??更多參數可以參考:https://hub.docker.com/_/nextcloud/
??執行之后會顯示一個類似下面的長串字符,表示啟動成功:

526306c7a591205f6d2cd417384571b358e738e3c8b52c16c1fc6f1893c8535f

??也可以使用下面命令查看容器是否正常運行:

docker ps

??如果顯示以下內容,表明容器已經在運行中了:

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
619d34210996 nextcloud "/entrypoint.sh apac…" 1 hours ago Up 1 hours 0.0.0.0:80->80/tcp nextcloud

(三)初始化安裝(我沒裝防火墻,所以,這一步我好像沒涉及)

??需要注意的是,如果使用的阿里云或騰訊的服務器,要檢查服務器的安全組是否開放了 80 端口,沒有開放的需要開放一下。

??如果使用的是本地虛擬機,需要執行以下命令開放 80 端口對外訪問:

firewall-cmd --zone=public --add-port=80/tcp --permanent

??然后更新防火墻規則:

firewall-cmd --reload

五、nextcloud連接數據庫

??在docker中按照網絡上的教程,配置好nextcloud后,用威聯通IP+nextcloud端口號訪問,進入安裝界面。

??在“用戶名”和“密碼”中設置自己的初始管理員賬號密碼。

該圖為借用網上的,鏈接附后

?? “數據庫用戶”、“數據庫密碼”、“數據庫名”就填寫第三步第二點中創建的數據庫及用戶相關信息(可以直接都設成“nextcloud”)。

??重點來了,最后一行,網上有很多種不同的說法,經過嘗試均失敗。

??后來經過嘗試,成功的方法就是:威聯通的IP地址+MariaDB的端口號。不用輸入什么127.0.0.1,也不用輸入什么172.17.0.1,或者什么橋接IP。快準狠的方法就是直接輸入:

??你的威聯通IP地址:MariaDB的端口號。

?? 注意:有的端口是3306、有的是3307,這要看你安裝的MariaDB是什么版本的。具體查看方法如下圖:進入套件中心,已安裝套件,點擊MariaDB就看到了。

注明相關涉及的內容出處:
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容