写在前面
在了解完内外网之后,我们就可以着手搭建各个类型的应用来丰富我们的NAS。
首先是用处比较大的网盘系统(尤其是感受过某某网盘的折磨)。
自己的网盘系统不需要担心空间问题和局域网传输速度问题(内网穿透要单独考虑),可定制化内容多样,多人共享也很方便,对于数据敏感的小伙伴来说也有很好的安全性。
虽然NAS中已经可以通过SMB协议来实现网盘的基本存取功能,但是相比全面的网盘系统还差一个台阶。
这次就从第一个台阶开始走向一个功能全面的NAS。
(该用云盘的地方还是用云盘,搭配才能达到最好的效果)
关于nextcloud
nextcloud是一款开源的网盘系统。个人或者企业都可以用nextcloud构建免费的网盘系统用于打通全平台的文件同步与共享方案。
其实同类的网盘也有很多,比如可道云、seafile等等。但文件的同步与共享只是nextcloud的一部分,更重要的是配套的插件可以大幅度地提升nextcloud的使用体验。
(另外seafile的文件是会进行加密保存的,不可以使用smb协议读取,得到的是密文。)
安装数据库
既然是一款全方位的个人云盘,数据存储当然是重中之重的。所以我们第一步需要做的就是安装数据库。
平时最常见的数据库应该就是MySQL了,这里我们也可以使用MySQL的进化版MariaDB来作为nextcloud的数据库基础。
讲讲异同
这次学习一下使用potainer的stack来安装容器组,也就是docker-compose。(分开装每个容器也是可以的,容器的一般图形化安装方法见docker详解那期)
使用stack可以同时安装多个容器,并且可以将容器纳入同一个网络区域,这样只有在网络区域内的容器可以相互访问,方便一些需要数据库的容器进行严密的联动。
首先需要创建一个网络区域
创建完成后进入stacks,点击add stack
这次我们需要安装MariaDB和数据库的图形管理界面Adminer
创建stack的名字为MariaDB,这里的参数我们参考一台电脑的NAS之旅提供的参数,粘贴在下面:
version: "2"
services:
mariadb:
image: linuxserver/mariadb
container_name: mariadb
environment:
- PUID=1000
- PGID=1000
- MYSQL_ROOT_PASSWORD=123456
- TZ=Asia/Shanghai
volumes:
- /srv/dev-disk-by-uuid-4dfd6c3d-d673-49f8-9702-1976894e1304/data/config/mariadb_config:/config
ports:
- 3306:3306
networks