树莓派搭建全功能NAS服务器(04):打造个人网盘系统

2023-02-28 13:15:16 9点赞 33收藏 5评论


为你分享有趣有价值的软件技巧与成长生活,点击关注自动推送更多内容树莓派搭建全功能NAS服务器(04):打造个人网盘系统

在了解完内外网之后,我们就可以着手搭建各个类型的应用来丰富我们的NAS。(之前的文章可点击头像查看【DIY计划】专栏)

首先是用处比较大的网盘系统(尤其是感受过某某网盘的折磨)。

当然,如果有大容量存储需求,首选还是固态或者机械硬盘

百科FANXIANG 梵想 S500Q 固态硬盘 2TB梵想 S500Q 固态硬盘采用NVMe、PCIe Gen3协议,精选原厂3D QLC NAND颗粒。在散热片中増加了石墨烯涂层,为高性能固态硬盘提供有效的散热控制,使硬盘能持久且可靠的工作运行,确保产品的使用寿命与稳定性,平均无故障工作时间150万小时。提供512GB、1TB、2TB三个容量版本可供选择,性能方面,梵想 S500Q顺序读取分别为3000MB/s(512GB)、3200MB/s(1TB)、3200MB/s(2TB),顺序写入速度分别为1450MB/s(512GB)、2050MB/s(1TB)、1800MB/s(2TB),读写寿命分别为160TBW(512GB)、320TBW(1TB)、640TBW(2TB)。提供5年质保。 0 点评1 原创0 好价8去购买查看详情


自己的网盘系统不需要担心空间问题和局域网传输速度问题(内网穿透要单独考虑),可定制化内容多样,多人共享也很方便,对于数据敏感的小伙伴来说也有很好的安全性。



树莓派搭建全功能NAS服务器(04):打造个人网盘系统




虽然NAS中已经可以通过SMB协议来实现网盘的基本存取功能,但是相比全面的网盘系统还差一个台阶。

这次就从第一个台阶开始走向一个功能全面的NAS。

(该用云盘的地方还是用云盘,搭配才能达到最好的效果)



关于nextcloud


nextcloud是一款开源的网盘系统。个人或者企业都可以用nextcloud构建免费的网盘系统用于打通全平台的文件同步与共享方案。


树莓派搭建全功能NAS服务器(04):打造个人网盘系统

其实同类的网盘也有很多,比如可道云、seafile等等。但文件的同步与共享只是nextcloud的一部分,更重要的是配套的插件可以大幅度地提升nextcloud的使用体验。

(另外seafile的文件是会进行加密保存的,不可以使用smb协议读取,得到的是密文。)


安装数据库


既然是一款全方位的个人云盘,数据存储当然是重中之重的。所以我们第一步需要做的就是安装数据库。

平时最常见的数据库应该就是MySQL了,这里我们也可以使用MySQL的进化版MariaDB来作为nextcloud的数据库基础。

讲讲异同

这次学习一下使用potainer的stack来安装容器组,也就是docker-compose。(分开装每个容器也是可以的,容器的一般图形化安装方法见docker详解那期)

使用stack可以同时安装多个容器,并且可以将容器纳入同一个网络区域,这样只有在网络区域内的容器可以相互访问,方便一些需要数据库的容器进行严密的联动。

首先需要创建一个网络区域



树莓派搭建全功能NAS服务器(04):打造个人网盘系统

创建完成后进入stacks,点击add stack



树莓派搭建全功能NAS服务器(04):打造个人网盘系统

这次我们需要安装MariaDB和数据库的图形管理界面Adminer

创建stack的名字为MariaDB,这里的参数我们参考“一台电脑的NAS之旅”提供的参数。

1.PUID和PGID

还是用我们老方法:id $user查询然后对应,关于linux的权限设置问题后面可以单独说一次。

2.把PASSWORD改为自己的密码

3.volumes

把设置目录对应到/config这个相对路径

4.ports

端口这边可以只留下面的端口8080,mariaDB不需要端口

5.networks

网络设置为我们刚创建的网络区域

6.adminer

adminer这边不需要改什么,把网络对应好就可以

点击部署,等待stack创建

创建好之后可以看到该stack里有两个容器



树莓派搭建全功能NAS服务器(04):打造个人网盘系统

输入ip地址:8080就可以进入到Adminer的界面了,用户名是root,密码是自己设的密码



树莓派搭建全功能NAS服务器(04):打造个人网盘系统

登陆后就可以看到数据库了,这里也可以进行数据管理,当然配合外部应用更为方便。



树莓派搭建全功能NAS服务器(04):打造个人网盘系统


安装nextcloud


docker-compose安装

前面说完了nextcloud的好处,那么这里我们直接安装

首先打开我们的老朋友linuxserver中找到nextcloud的doc



树莓派搭建全功能NAS服务器(04):打造个人网盘系统

复制下面的docker-compose代码



树莓派搭建全功能NAS服务器(04):打造个人网盘系统




1.PUID和PGID

先去看一下OMV中的用户名,然后查找该用户名的uid和gid。这里设置错了会出现无权访问的情况,也可以通过OMV给对应用户权限解决。


树莓派搭建全功能NAS服务器(04):打造个人网盘系统




2.volumes

硬盘中的绝对路径:相对路径,用finalshell查看

比如我的就是设置目录:

/srv/dev-disk-by-uuid-8ef4dd5d-322d-4e8c-b11a-b878ea0ed7c6/myHub/nextcloud/config

数据目录:

/srv/dev-disk-by-uuid-8ef4dd5d-322d-4e8c-b11a-b878ea0ed7c6/myHub/nextcloud/data

点击部署,默认端口号为443

这里如果部署完但是无法登录,可以使用命令行docker安装

创建nextcloud文件夹,在文件夹内创建docker-compose.yml文件

把上面的yml内容复制进去

在该文件夹下运行sudo docker-compose up -d部署


树莓派搭建全功能NAS服务器(04):打造个人网盘系统





nextcloud登陆

输入ip:443就可以打开了,要注意这里是https,提示不是专用连接



树莓派搭建全功能NAS服务器(04):打造个人网盘系统

然后进入就可以看到登陆界面了


树莓派搭建全功能NAS服务器(04):打造个人网盘系统

绑定数据库

下拉点开存储与数据库,这里选择中间的MySQL/MariaDB



树莓派搭建全功能NAS服务器(04):打造个人网盘系统




这时候我们还没有数据库,需要进入Adminer界面创建数据库



树莓派搭建全功能NAS服务器(04):打造个人网盘系统




保存后再点击权限,创建用户,给予所有权限



树莓派搭建全功能NAS服务器(04):打造个人网盘系统

链接数据库


树莓派搭建全功能NAS服务器(04):打造个人网盘系统




等待片刻成功登录


树莓派搭建全功能NAS服务器(04):打造个人网盘系统




改为信任链接

如果出现提示为不信任域名,那么进入该路径:

/srv/dev-disk-by-uuid-8ef4dd5d-322d-4e8c-b11a-b878ea0ed7c6/myHub/nextcloud/config/www/nextcloud/config

编辑config.php文件,将受信任域名添加进去:


树莓派搭建全功能NAS服务器(04):打造个人网盘系统




文件结构

建议把nextcloud安装在共享文件夹,这样方便管理文件。

在data目录就可以看到设定的用户

点开之后的目录结构与网盘上的一致



树莓派搭建全功能NAS服务器(04):打造个人网盘系统



优化nextcloud


在安装完成后,打开网站的过程中可能会有一点点慢。nextcloud官方也提供了一些优化的方法以提高体验感.

这里我们挑几个比较有效果的说说。


设备后台任务

nextcloud的后台任务有三种执行方式,分别是AJAX,Webcron和Cron。官方推荐使用Cron,这里我们在设置中修改。



树莓派搭建全功能NAS服务器(04):打造个人网盘系统

再顺手在定时任务中添加cron.php(路径是实际安装路径)

crontab -u www-data -e*/5 * * * * php -f /var/www/nextcloud/cron.php

docker也可以直接

docker exec --user www-data nextcloud_nextcloud_1 php /var/www/html/cron.php


修改缓存

使用内存作为缓存可以提高访问网页的速度。

官方推荐使用APCu和Redis的组合。

这里可以把本地缓存后端改为APCu,分布式缓存后端改为Redis。

打开/www/wwwroot/nextcloud目录/config/config.php

添加

'memcache.local' => 'OCMemcacheAPCu','memcache.distributed' => 'OCMemcacheRedis','redis' => array(
'host' => 'localhost',
'port' => 6379,)


调整PHP-FPM

提高PHP-FPM的运行效率,修改进程数和备用进程数。

打开文件nextcloud/config/php/www2.conf

添加:

[www]
pm = dynamic
pm.max_children = 120
pm.start_servers = 12
pm.min_spare_servers = 6
pm.max_spare_servers = 18

修改到这里对于个人使用基本是足够了,如果主要用于团队协作可以根据官方文档仔细研究一下优化,事半功倍。(优化好速度真的快)



值得拥有的应用


nextcloud更强大的地方在于除了网盘功能,它还拥有着非常丰富的应用库。


日历&邮箱&地图

这些基础应用如果没有在安装时勾选的话,那么需要单独在应用里下载并启用。

都不是很华丽甚至有点简单,但是在你需要的时候也可以用起来。



树莓派搭建全功能NAS服务器(04):打造个人网盘系统

相册管理

nextcloud对于照片的管理体系可以让你不需要在NAS上下载单独的照片管理工具。同样也有地点和标签功能,照片还可以单独查看



树莓派搭建全功能NAS服务器(04):打造个人网盘系统




手机相册自动同步

打通手机、电脑、平板直接的数据链路已经不再稀奇。

这里我们可以打开手机端的界面:



树莓派搭建全功能NAS服务器(04):打造个人网盘系统




而对于手机端来说,自动同步相册这个功能可以说非常好用了。(当然如果是内网穿透同步可能速度有点堪忧)

打开自动上传,这里你可以设置自动同步哪一个文件夹,或者单独新建一个同步文件夹:


树莓派搭建全功能NAS服务器(04):打造个人网盘系统




自动上传的设置也非常细致:



树莓派搭建全功能NAS服务器(04):打造个人网盘系统

(主要是看到这个没有限制的网盘空间就很舒服)


PDF viewer&Video player

一开始就默认开启的应用,可以很方便地预览pdf文件和视频。(视频直接可以播放,不用等神奇的进度条)



树莓派搭建全功能NAS服务器(04):打造个人网盘系统




笔记

点击右上角的用户,在应用这栏可以找到精选应用。添加Notes这个应用就可以进行简单的笔记管理了。



树莓派搭建全功能NAS服务器(04):打造个人网盘系统




不是非常好用但是可以在需要的时候用一下,还支持markdown,非常舒适。

笔记会自动存放在自动创建的笔记文件夹中。


思维导图

同样在应用这栏我们还可以添加思维导图进去。这款思维导图插件叫做Mind map。点击下载并启用之后就可以在首页创建了。



树莓派搭建全功能NAS服务器(04):打造个人网盘系统




功能非常前面,甚至还有脑残粉(误),体验来说不比xmind差,完全够用。



树莓派搭建全功能NAS服务器(04):打造个人网盘系统




流程图

既然有思维导图,那一定不能少了流程图。

在应用中可以找到叫做darw.io的流程图插件。下载并启用之后就可以在首页创建了。



树莓派搭建全功能NAS服务器(04):打造个人网盘系统




Onlyoffice

这里再推荐一款重磅应用Onlyoffice,可以直接在nextcloud中编辑office三件套,还可以协同编辑。

Onlyoffice是可以直接在服务器上部署的,同时也提供了其他平台的应用。



树莓派搭建全功能NAS服务器(04):打造个人网盘系统




nextcloud也支持collabora Online,但是相比起来还是Onlyoffice更好用一点。(明目张胆的写在这里)



树莓派搭建全功能NAS服务器(04):打造个人网盘系统




由于功能比较复杂,Onlyoffice需要现在服务器上安装,再与nextcloud链接才可以使用。


安装Onlyoffice

安装说明官方写的很详细

首先要注意内存和空间要求(一套下载下来也不小)



树莓派搭建全功能NAS服务器(04):打造个人网盘系统




docker下直接运行

sudo docker run -i -t -d -p 80:80 --restart=always onlyoffice/documentserver

把前面的80端口改为你想映射的端口


树莓派搭建全功能NAS服务器(04):打造个人网盘系统

再配置路径映射



树莓派搭建全功能NAS服务器(04):打造个人网盘系统




这时候可以按照官方的设置为https,当然现在已经可以打开了


树莓派搭建全功能NAS服务器(04):打造个人网盘系统




连接nextcloud

再回到nextcloud,在应用里添加好Onlyoffice,打开设置界面,填写安装后的Onlyoffice地址和端口



树莓派搭建全功能NAS服务器(04):打造个人网盘系统




然后在首页可以添加新的文档,就可以用Onlyoffice编辑了。



树莓派搭建全功能NAS服务器(04):打造个人网盘系统




如果自己用就已经够了,想协同编辑的小伙伴可以深入研究一下Onlyoffice的其他功能。




总结

对于nextcloud来说搭建到这个程度已经体验很好了,完全够用,其他的功能后续会有其他更好的应用来查漏补缺。

感谢阅读,下期继续分享!


作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
5评论

  • 精彩
  • 最新
  • 学习学习,有空互暖哟

    校验提示文案

    提交
    我来啦!

    校验提示文案

    提交
    收起所有回复
  • 我觉得头图最好是清凉小姐姐,标题也换成“给小姐姐盖别墅”。引来色友后面再说。

    校验提示文案

    提交
  • 写的真好。但是有兴趣的值友太少了。长期感觉就没创作激情了。

    校验提示文案

    提交
  • 技术文章,慢慢学习

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
33
扫一下,分享更方便,购买更轻松