跳到主要內容

舊電腦變自架雲端儲存 nextcloud + samba 最詳細教學 帶你一步一步走 (Part7)

 目錄:



Part7

前言:
之前的教學是針對 OMV 6.0版本的,到了  OMV 6.8 版本,在DOCKER架設方面得到了優化,跟過去在 6.0版本的架設方式有所不同,原文「Part3 部署 nextcloud」已經不適用,所以這次就來更新這個部分。其他方面則是沒有太大差異。

OMV 6.8 把 docker 設置面版加修到 OVM 的管理頁面當中,需無另外到 PORTAINER 設置,但實際使用方面是大同小異的,意義在於精簡操作流程,所以如果你過去有用過舊方式架 docker ,新版也不會難上手 。

目前 OMV 6.8 當中,官方建議及充許 把 OMV 主系統、DOCKER 和 一般資料儲存 安置在不同硬碟上,硬件彼此獨立,這樣可以增加安全性(但當然需要的硬碟會變多)。

舉個實例,筆者使用的是 intel R1208wf server 主板兩個 M.2 跟 前方 8 bay 2.5 硬碟位,筆者目前的作法是把 OMV 主系統 跟 docker 分別放到 主板上的 M.2 ,前方8 bay 2.5 硬碟位 弄 raid (一共10個儲存裝置),這是比較理想的情況。但簡單一點的話,把 OMV 跟 docker 放一起,再弄2隻硬碟設成 raid 1 ,只需要3個硬碟位也可以架設相比較安全的 NAS,成本跟硬件要求也可以較低 ,視你的硬件決定。但本文會以官方建議的方式設置,畢竟現在的主板一般都有最少4個 sata 接口或以上(6~8 個都是常見的)。


正文:
安裝好 OMV 6.8 之後,先用 SSH 連線到OMV 主機,通過以下指令安裝 OMV extra,這個部分 Part3 前面部分有說明,就不累贅了。
wget -O - https://github.com/OpenMediaVault-Plugin-Developers/packages/raw/master/install | bash

還有 OMV 修改設定後一定會要你確認才會實施,因為一定都有,所以下文就不說明這個步驟了。


安裝好之後,到系統下的 OMV-extra 把 docker repo 打勾再按 save ,旁邊的其他按鈕不用動。



接下來到 docker plugins 找到 輸入 compose 找到 compose 這個插件,點選插件後按下安裝。


現在在 service 的部分,就會多了 compose 一項,這邊就是用來部處/管理 docker 的。比之前的方式要精簡很多,到這邊你已經完成 80% 了。 接下來需要設定appuser 用戶,以及設置 docker 檔案放置的位置,都是一些很基本的東西。



現在到 users ,新增 " appuser " 用戶,新增時要把用戶加到 docker 及 users 群組(group) 當中,這點相當重要。


現在你要先準備好要放 docker 的硬碟,準備硬碟的部分我們在 part2 架 samba 時有說過了,接下來到 shared folders 在放 docker 的硬碟上增加 4 個 folders ,分別是
1. docker
2. data
3. appdata
4. backup_docker

記住folder 是要增加在 放 docker 的硬碟上,弄好之後看一下 Device 的部分的,是不是名字都一樣,一樣才是對的。

如果你沒有多一隻硬碟,你也可以把 folder 都放到 OMV 系統碟上,增設 folder 時選系統碟就是了。 


接下來要設定每個 folder 的權限,點選 folder 之後再點選,Permission(權限) 。


把 appuser 的權限設定成 Read/Write ,剛剛弄的4個folders,每個都要這樣弄。這步很重要,否則架 Nextcloud 時,拉 image 下來時會失敗,因此他沒有權限把檔案放進去。

都設定好後,現在順便複製 docker folder 的絕對路徑(absolute path),點一下路徑旁邊的複製圖示就可以了,等下會用到。



現在到 Services > Compose > Settings ,設定好 docker 不同檔案要放置的位置,上面3個可以用點選的方式,最下方的 Docker 要用輸入的方式,把剛剛複製的路徑貼上即可。弄好之後按 save 就可以了。現在就都準備好了,可以來安裝 Nextcloud。(如果你比較過之前用 Portainer 的方式,現在的方式快多了)


現在到 Services > Compose >Files ( 就在 Settings下方),點選 + 號 Creat。 在這邊可以加入 Stack 跟從前在 Portainer 時是一樣的。Stack 就是加入一組 container 的意思。


為stack 輸入的名字,名字你們可以自己取,但最好不要是太複雜的。筆者叫他 NC ,這樣就可以了。

在輸入文字的部分,我們會參考 docker 官方提供的 nextcloud docker-compose file。
docker  nextcloud 官方:https://hub.docker.com/_/nextcloud


我們會使用 Base version - apache,由於 docker 技術並不是入門級的,加上篇幅有限,接下來的操作可能不好理解,但簡單來說,我們需要輸入一些文字,這些文字會告訴 compose 怎樣用 docker 去建立一個 nextcloud container ,所以文字內容就是一些container 的配置。筆者在官方的文檔上增加了一點內容,分別是預設了mysql database (資料庫) 的密碼及加大了nextcloud 的上傳和ram使用限制。你可以依你的情況自行修改,也可以直接用筆者的設置。下面會先提供圖片說明,接下來會有供直接複製貼上的文字。(這個部分跟 part 3 是一樣的,筆者直接搬過來)





1. mysql database root 密碼 (筆者預設了 admin)
2. mysql database 密碼(筆者預設了 admin)
3. nextcloud 需要有  mysql database 的密碼 ,所以需要跟 2 是一樣的。
4. 這項是筆者加進去的,設定檔案上傳大小可達 100GB
5. 也是筆者加進去的,設定ram 使用上限 8GB

因為筆者經常用 nextcloud 傳圖片,所以必須把 4 及 5 設得較高。如果你沒有特別加入文字設定,container 就會採用 nextcloud 預設的上傳大小限制 512MB,512MB 對一般圖片或文檔都是沒問題的,但如果剛好你檔案比較大,超過這個上限,就會上傳失敗,比如1GB 的PSD檔,4GB 的小電影 等等;畢竟隨著科技進步,面對大檔的情況愈來愈多,對筆者而言,設高一點是好事。下方文字貼上後按下 save 就可以了,Compose 會自動開始拉檔案下來建立 Container 及 Nextcloud。

下面是影遊樂園修改版的 nextcloud docker-compose file - Base version - apache:

version: '2'

volumes:
  nextcloud:
  db:

services:
  db:
    image: mariadb:10.5
    restart: always
    command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
    volumes:
      - db:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=admin
      - MYSQL_PASSWORD=admin
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud

  app:
    image: nextcloud
    restart: always
    ports:
      - 8080:80
      - 4433:443
    links:
      - db
    volumes:
      - nextcloud:/var/www/html
    environment:
      - MYSQL_PASSWORD=admin
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud
      - MYSQL_HOST=db
      - PHP_UPLOAD_LIMIT=100G
      - PHP_MEMORY_LIMIT=8G


--------------------------------我是分界線---------------------------
 
我們快要完成了,接下來到 services > compose >  services ( 就在 Files下方) ,這時你就會看到2個 Container 已經在跑了,按一下圖箭頭3 的地方,就會直接打開 Nextcloud 頁面囉! 恭喜,你已經完成了! (你也可以通過瀏覽器輸入你的 home nas 的 IP 後面加上:8080 ,一樣可以去到 Nextcloud 頁面)

例子:
192.168.1.201:8080


接下來的部分在 Part3 已經有了,主要簡單設定及介紹 Nextcloud,請大家回到 Part3 那邊看囉(接近文章完結的部分)。 


目前在 compose 當中看不到 container 的 ip,但在 Part5 設定 ssl 時要用到。Nextcloud container 的 Ip 可以在 Nextcloud 那邊的頁面找到。見下圖。


有不清楚的地方可以再留言給我,通常我數天之內會看到。以上。







 







 

留言

張貼留言

這個網誌中的熱門文章

Fan Control 超好用的風扇控制軟件

前言:  今天來跟大家分享一下超好用的風扇控制軟件 Fan Control,功能精簡好用,介面直觀好操作。 Fan Control 是由 Github 一個小團隊開發的免費軟件, Github 有很好的官方使用說明和資料: https://github.com/Rem0o/FanControl.Releases 不過筆者還是打算不厭其煩在這邊用中文跟大家分享一下。 Fan Control 可以讓你高自由度設定風扇,例如對指定系統溫度作反應等等。比如筆者的顯卡很熱,但機箱風扇都針對CPU熱的時候才有反應,導致顯卡的熱力累積在機箱內部,結果顯卡又只能拿已經很熱的機箱空氣來用。那裡如果設置成顯卡熱時,機箱風扇一起反應就好了,用 Fan Control 達成就很 EASY!

Nikon FE 底片機 開箱 評測 用後感

  前言: 近年,底片機又有點微熱,也有人來問筆者怎麼選。當中 FM2 的價格被拉得滿高的,其中一個原因是知名度比較高,但其實Nikon 還有很多很棒的傳統底片機可以考濾。當中 FE 是筆者最推薦的,cp值高,性能又整全,這篇就來好好介紹一下,讓大家認識 Nikon FE !

Olympus Trip 35 底片機 開箱 評測 用後感

  前言: 這陣子筆者忙了很多事情,結果文章又停了一下。今天來跟大家介紹一下 OLYMPUS 的一台隨拍機。事關很多想體驗底片的朋友,對設定參數沒什麼興趣,反正就是想要一台底片機可以輕鬆拍,那麼這台就是了, Olympus Trip 35  可是一台由推出到現在,近半世紀都大熱的一台隨拍機。下文這台,也是筆者親自全機整修過的,就來跟大家一起說明一下。