centos7下搭建nextcloud雲(使用阿里雲輕量伺服器+oss物件儲存)
阿新 • • 發佈:2018-12-29
1. 購買阿里雲輕量級伺服器
最近看到阿里雲上新了新的輕量級伺服器位於香港,而且頻寬和價格也都不錯。
購買伺服器並配置好金鑰就可以使用了。但是nextcloud還是挺吃記憶體的推薦1G以上的記憶體。
從伺服器下載的速度限制在30Mbps也就是差不多4MB/s,上傳的話應該是不限速的,但是我們的山行帶塊也就是不超過20Mbps所以說也就不是什麼大問題。
2.安裝純淨版的centos7.5
參考的https://www.hostloc.com/thread-449335-2-1.html
指令碼(適用於全新安裝,其他安裝請參考網站提供的指令碼)
sudo curl -sSL https://raw.githubusercontent.com/MeowLove/AlibabaCloud-CentOS7-Pure-and-safe/master/download/kill/New_installation.sh | sudo bash
- 可以安裝阿里雲還沒有提供最新版的centos7.5
- 可以移除阿里雲的監控程式
- 舊的安裝包可能導致安全漏洞
3.開啟BBR加速TCP速度
參考秋水逸冰的指令碼:https://teddysun.com/489.html
這裡就直接放出指令碼(建議使用root賬戶執行):
TCP BBR擁塞控制技術可以網速但是隻適用於kvm虛擬化的vps。
wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh
4.安裝nextcloud14
直接使用這個教程安裝:https://blog.csdn.net/qq_36731677/article/details/79501993
但是需要注意的是,
- 在
config.sample.php
中設定的datadirectoty
是整個資料盤的檔案而不是簡單的儲存檔案,檔案裡面還有css,js等檔案,所以說建議此位置設定在ssd盤上加速讀取,我第一次就是直接將掛載的oss檔案設定為資料盤,才發現網站檔案都在oss裡,最後又重灌了一遍。不能直接將掛載的ossfs設定為資料盤 - 在安裝好nextcloud後在網頁的應用中開啟,External storage support
也就是也就是啟用外部儲存,但是這裡的外部儲存只是儲存檔案而不是其他網站上的資料。
在網站的設定中可以看到外部儲存 的標識,開啟之後,
也就可以新增這幾種外部儲存,這裡我們選擇本地儲存。但是在本地的資料夾也是有一定的要求。這裡我們參考官方的文件
https://docs.nextcloud.com/server/14/admin_manual/configuration_files/external_storage_configuration_gui.html
可以看到對檔案的要求是http伺服器的使用者和組可以訪問檔案,而且設定檔案的許可權為0750,
但是我們在掛載ossfs的時候,並執行chmod的命令的話,會有i/o錯誤,也就是oss的缺陷了,必須在掛載的時候設定使用者許可權。這個這第5節說明。
5.使用ossfs掛載oss 物件並配置
- 安裝包下載適用於centos7下載連結: rmp檔案
- 安裝方法使用yum localinsatll安裝
sudo yum localinstall your_ossfs_package
- 使用方法栗子
將my-bucket這個bucket掛載到/tmp/ossfs目錄下,AccessKeyId是faint,AccessKeySecret是123,OSS endpoint是http://oss-cn-hangzhou.aliyuncs.com
echo my-bucket:faint:123 > /etc/passwd-ossfs
chmod 640 /etc/passwd-ossfs
mkdir /tmp/ossfs
ossfs my-bucket /tmp/ossfs -ourl=http://oss-cn-hangzhou.aliyuncs.com
- 掛載我們檔案
- 設定好ossfs的配置檔案
- 建立我們的外部儲存檔案
mkdir /nextcloud_data
- 授予nginx:nginx
sudo chown -R nginx:nginx /nextcloud_data
- 0750許可權
sudo chmod -R 0750 /nextcloud_data
- 掛栽檔案
ossfs ximinextcloud /nextcloud_data -ourl=exp.com -o allow_other -o nonempty
這只是個例子要對你的配置環境。-o allow_other
為授予全部使用者-o nonempty
為掛載為不為空的目錄,但是你也可以單獨掛載在某個使用者,還有其他的可選引數,可以參考官方文件。 - 如果要解除安裝的話 可以使用
fusermount -u
命令解除安裝目錄。 - 開機自動掛載
vim /etc/init.d/ossfs
寫入以下
#! /bin/bash
# chkconfig: 2345 90 10
ossfs ximinextcloud /nextcloud_data -ourl=exp.com -o allow_other -o nonempty
執行命令
chmod a+x /etc/init.d/ossfs
chkconfig ossfs on
df -h 可以檢視掛載情況
掛載後的情況256t的超大空間,能裝好多小姐姐
6.在nextcloud上載入我們的目錄
啟用外部外掛 擴充套件儲存(External storage support)
接著新增儲存就可以進行擴充套件