nextcloud個人雲搭建

嫌疑的羊發表於2022-02-03

nextcloud個人雲搭建

樹莓派安裝系統

首先安裝樹莓派官方系統(Raspbian),需要安裝lite版的系統(桌面版系統嘗試過,後續會安裝失敗,不能用),不清楚為什麼視訊教程裡面的就是用的桌面版作業系統。

下載完成後需要進行解壓,得到以.img結尾的檔案,使用[balenaEtcher](balenaEtcher - Flash OS images to SD cards & USB drives)進行燒寫系統,

也可使用樹莓派官方燒寫工具進行燒寫系統,燒寫完成後,拔出讀卡器,再重新插入電腦,建立檔案ssh (沒有字尾名)開啟樹莓派的ssh。

登入路由器管理介面檢視樹莓派的ip地址,樹莓派系統預設使用者名稱pi,密碼raspberry。

進入系統後輸入:
sudo passwd root 
重新設定密碼

安裝OMV5

首先下載檔案

apt-get update
apt-get install openssl libssl-dev vim
wget -O - https://github.com/OpenMediaVault-Plugin-Developers/installScript/raw/master/install|sudo bash

至此omv5安裝完畢

瀏覽器輸入樹莓派網址(預設埠80)

omv5系統預設使用者名稱:admin,密碼: openmediavault

安裝dockcer

在openmediavault管理介面中,找到OMV-Extras,點選docker安裝,安裝portainer,(如果期間出現了錯誤,再安裝一次就可以了)

開啟portainer管理頁面設定密碼,去containers中即可看到正在執行的容器,

在樹莓派shell中輸入:

docker pull nextcloud 
預設下載最新版本23

在portainers的images中可以看到nextcloud映象,將容器中的目錄對映到樹莓派系統中

docker run -d --name nextcloud -p 8080:80 -v /var/www/html:/var/www/html nextcloud

掛載硬碟進行對映(使用u盤測試的)

在openmediavault管理頁面中,找到磁碟,可以看到剛剛插入的硬碟,在檔案系統中對硬碟進行掛載,格式化,建立檔案系統格式,格式選擇ext2或者ext3格式。

在 shell介面中/src目錄下可以找到掛載的硬碟,進入目錄後,用mkdir在硬碟中建立檔案。

docker run -d --name nextcloud -p 8080:80 -v /srv/dev-disk-by-uuid-73f049ab-12d9-4c48-8356-da19484d7457/nextcloud:var/www/html nextcloud

建立成功後shell介面就會出現一串id碼

對映成功後可以在portainer中的nextcloud容器中可以看到對映成功;

使用IP地址進入nextcloud頁面

如果使用windows格式的硬碟,那麼會出現報錯,

如果強烈使用windows格式的硬碟,在對映出來的目錄裡,進入config/config.php,

在最後一行加入,

'check_data_directory_permissions' => false,

在位址列進行重新整理即可

不足

接下來要考慮連線資料庫mysql,nginx ssl反向代理

配置資料庫

使用docker拉取postgresql

docker pull postgres:latest

這裡未使用mysql是因為dockerhub裡面的mysql官方映象並不支援arm/v7

並沒有arm的標籤,所以採用了postgresql資料庫。

執行容器

sudo docker run -d --name=postgres -e POSTGRES_PASSWORD=123456 -p 5432:5432 postgres:latest

資料庫的埠是5432,密碼是123456。

  1. run 建立並執行一個容器
  2. -d 後臺執行
  3. –name 指定建立的容器的名字
  4. -e POSTGRES_PASSWORD=123456,設定環境變數,設定密碼為123456
  5. -p 5433:5432,將主機的的5432埠對映到容器的5433埠

進入容器

docker exec -it postgres psql -U postgres -d postgres

建立資料庫

CREATE DATABASE nextcloud;

退出容器

exit

nextcloud使用資料庫

主機名一定要寫ip地址,不能寫localhost

問題

使用資料庫連線工具連線了資料庫之後,並沒有找到nextcloud資料庫,不太清楚原因,但是nextcloud能正常使用資料庫。

關於使用ssl證照

由於ssl證照需要使用ip地址生成金鑰,但是由於未來我的樹莓派地址會改變,所以就不打算設定ssl了,打算只在內網使用。

相關文章