哈喽,大家好我是生活爱好者。
今天咱通过NAS部署一款私有云平台nextcloud,所有数据都在NAS上,不用担心数据泄露审核问题。该项目支持扩展丰富的应用。还可以安装only office,打工人的福音。同时支持在不同设备上访问nextcloud。
下图是部署后的效果。
一、NAS 部署
进入威联通NAS后,打开软件ContainerStation,然后将下方代码进行复制粘贴。
version: '3' services: nextcloud: image: docker.1ms.run/linuxserver/nextcloud:latest container_name: nextcloud ports: - 8012:80 # 前端访问端口(NAS IP:8012) - 8443:443 # HTTPS端口(NAS IP:8443) environment: - PUID=1000 # 威联通admin用户UID(可通过`id admin`确认) - PGID=1000 # 威联通admin组GID - TZ=Asia/Shanghai # 时区(解决时区警告核心) # 关键:添加数据库连接参数,让Nextcloud自动识别数据库,完成安装(解决Not installed) - MYSQL_HOST=db # 指向db容器名(容器间网络互通) - MYSQL_DATABASE=nextcloud - MYSQL_USER=qnap - MYSQL_PASSWORD=qnap1234 # 必须和db容器的MYSQL_PASSWORD一致 - NEXTCLOUD_TRUSTED_DOMAINS=localhost,192.168.31.73,你的NAS_IP # 替换为实际NAS IP(如192.168.1.100) - PHP_TIMEZONE=Asia/Shanghai # 显式设置PHP时区(解决date.timezone警告) volumes: # 威联通路径规范:/share/[卷名]/[文件夹](替换为你的实际卷名,如DataVol1、Share) - /share/Container/nextcloud/data:/data # Nextcloud数据存储 - /share/Container/nextcloud/config:/config # Nextcloud核心配置(含config.php) - /share/Container/nextcloud/www:/app/www/public # 挂载应用目录(解决base.php路径权限) restart: unless-stopped privileged: true # 威联通NAS必须开启!解决文件权限/挂载异常(核心) depends_on: - db # 强制数据库先启动,避免Nextcloud安装时连不上库 networks: - nextcloud_net # 加入专属网络,确保容器间通信 db: image: docker.1ms.run/linuxserver/mariadb:latest container_name: nextcloud_db environment: - PUID=1000 - PGID=1000 - TZ=Asia/Shanghai - MYSQL_ROOT_PASSWORD=qnap # 务必修改!数据库根密码 - MYSQL_PASSWORD=qnap1234 # 务必修改!和上面nextcloud的MYSQL_PASSWORD一致 - MYSQL_DATABASE=nextcloud # 固定:Nextcloud数据库名 - MYSQL_USER=nextcloud # 固定:Nextcloud数据库用户 volumes: - /share/Container/nextcloud/mariadb:/config # 数据库数据持久化(威联通卷名替换) ports: - 3306:3306 # 仅需外部连接时保留,仅容器内访问可注释(更安全) restart: unless-stopped privileged: true # 解决威联通下数据库权限问题 networks: - nextcloud_net # 加入专属网络 # 新增专属网络:确保nextcloud和db容器互通(解决连接失败) networks: nextcloud_net: driver: bridge
接下来等待安装。
二、设置nextcloud
在浏览器中输入NAS的IP+端口号就能访问到nextcloud,接着输入账号和密码。然后根据自己的需求选择配置数据库,笔者作为测试选择SQLite,最后点击安装。
安装成功后,再次输入账号和密码点击【登录】。
登录后的画面。
可以选择【自定义】进行编辑【小部件】。
接下来就可以进行创建文件夹上传资料啦,方法和平时使用网盘大同小异。
可以在不同平台进行访问nextcloud,移动端也支持安装nextcloud。
三、扩展应用
nextcloud支持丰富的扩展应用。本文操作安装onlyoffice。点击右上角选择【应用】。
接着选择【Office&text】。
找到ONLYOFICE下载并启用。
成功启用后,在【已启用的应用】中有ONLYOFFICE。
然后在【管理设置】中就可以找到ONLY OFFICE,把部署好的ONLYOFFICE地址填进去。这个应用比较吃内存,如果你的NAS内存比较小,不建议安装。
附ONLYOFFICE的代码。
version: '3' # 威联通Container Station要求显式声明版本 services: onlyoffice: image: docker.1ms.run/onlyoffice/documentserver:latest container_name: onlyoffice ports: - 8090:80 # 威联通访问端口:NAS_IP:8090 environment: # 保留原有JWT配置(文档协作安全必备) - JWT_ENABLED=true - JWT_SECRET=root123456 # 新增:威联通NAS核心适配配置 - PUID=1000 # 威联通admin用户UID(默认1000,可通过id admin确认) - PGID=1000 # 威联通admin用户组GID(默认1000) - TZ=Asia/Shanghai # 时区适配,避免日志/时间错乱 - UMASK=002 # 权限掩码,解决威联通文件读写权限问题 volumes: # 威联通原生路径(避开/share网络共享目录,用Container Station本地路径) # 路径规则:/Container/container/[自定义目录]/[子目录] - /Container/container/onlyoffice/logs:/var/log/onlyoffice - /Container/container/onlyoffice/data:/var/www/onlyoffice/Data - /Container/container/onlyoffice/lib:/var/lib/onlyoffice - /Container/container/onlyoffice/db:/var/lib/postgresql restart: unless-stopped
四、手机端nextcloud
在手机的应用商城中搜索下载,然后将nextcloud的地址输入进去。
用手机可以查看
手机查看上传后的文件。