Nextcloud + PostgreSQL PostgreSQL+ Redis-Cluster Redis-Cluster + Docker+ APCu+ PHP-FPM

一键容器化部署高性能、安全加固的自托管私有云盘全栈

PostgreSQL 存数据、Redis/APCu 缓存与文件锁、PHP-FPM 优化执行、Caddy 处理 TLS 与 HTTP/3,Docker 统一编排

✓ 自动 TLS,安全评级 A+✓ 仅一个域名即可运行全部服务 ✕ 依赖 Docker 环境✕ 可选组件多,资源占用较高

方案简介

Nextcloud All-in-One(AIO)是 Nextcloud 官方提供的安装方式,把 Nextcloud 及其常用配套服务打包成一套 Docker 容器,实现"一次部署、整体维护"。它面向想要自建私有网盘/协作平台的个人、家庭与小团队:无需逐个安装数据库、缓存、Office、Talk 等组件,AIO 通过一个简单的 Web 界面完成安装、更新和日常维护。整套方案默认包含 Nextcloud 本体、文件高性能后端(Client Push)、Redis 与 APCu 缓存、PostgreSQL 数据库,并可选启用 Nextcloud Office、Talk 高性能后端与 TURN 服务器、ClamAV 杀毒、全文检索、Imaginary 预览等。安全方面开箱即得:自动 Let's Encrypt TLS、HTTP/2 与 HTTP/3、容器网络隔离、多数容器以非 root 与只读根文件系统运行,Nextcloud 安全扫描可达 A+ 评级。

亮点与能力

  • 简单 Web 界面完成安装与维护,含便捷的容器更新
  • 更新与备份通知;可从界面启用每日备份并在备份后自动更新全部容器
  • 支持通过备份归档 + 密码在新实例上整机恢复
  • 自动 TLS(Let's Encrypt),HTTP/2 与 HTTP/3 默认启用,zstd/gzip 压缩开启
  • Pretty URLs 默认启用,公开链接可上传最大 10 GB 的大文件(可调)
  • 仅需一个域名即可让所有服务正常工作
  • 容器日志可直接从 AIO 界面查看,便于调试
  • 可运行于 Docker 支持的所有平台,并支持 Docker rootless、Swarm、Kubernetes 等部署形态

组成与分工

  • Nextcloud:核心私有云应用,提供文件同步、分享与协作功能
  • PostgreSQL:作为数据库存储 Nextcloud 全部数据
  • Redis:分布式缓存与文件锁定
  • APCu:本地缓存
  • PHP-FPM:性能优化配置运行 Nextcloud 后端(默认启用 Opcache 与 JIT)
  • Caddy(位于 apache 容器内):处理 TLS 证书、zstd/gzip 压缩、HTTP/2 与 HTTP/3
  • Docker:容器编排基础,所有组件运行在独立 docker 网络中,仅暴露必要端口

前置要求

  • 一个支持 Docker 的操作系统/平台(README 明确 Runs on all platforms Docker supports,如 Windows、MacOS)
  • 一个指向服务器的域名(也可通过 AIO 界面直接注册免费的 deSEC 动态 DNS 域名 *.dedyn.io,无需外部域名)
  • 仓库提供 compose.yaml,可使用 Docker Compose 部署

实施步骤

1. 准备服务器与域名

确保服务器可公开访问并将域名解析到服务器 IP;如没有域名,可在 AIO 界面注册免费的 deSEC 动态 DNS 域名。

2. 安装 Docker

在支持的平台上安装 Docker(亦可选 Docker rootless 以获得额外安全性)。

3. 使用 compose.yaml 启动

仓库自带 Docker Compose 文件:

yaml

./compose.yaml

(仓库标注 Docker-compose ready,直接使用仓库中的 compose.yaml 启动 AIO 主容器。)

4. 通过 AIO Web 界面完成安装

打开 AIO 界面后按向导完成安装,所需可选组件(Nextcloud Office、Talk、ClamAV、全文检索等)可在界面中勾选启用。

5. 访问 Nextcloud

安装完成后仅用一个域名即可访问全部服务。

使用与配置要点

  • 日常更新:通过 AIO 界面更新全部容器,或启用自动更新
  • 备份:在 AIO 界面启用每日备份,备份完成后可自动更新所有容器、Nextcloud 及其应用;备份路径或远程 borg 仓库可在界面调整
  • 恢复:只需备份归档和密码,即可在新 AIO 实例上恢复整个实例
  • 调试:在 AIO 界面直接查看各容器日志
  • 大文件与超时:PHP 与 Web 服务器超时默认 3600s,上传上限、PHP 内存上限(默认每进程 512 MB)均可调
  • 反代:可运行于已有反向代理之后,也可使用 Cloudflare Tunnel 或 Tailscale

优缺点

  • ✓ 自动 TLS,安全评级 A+
  • ✓ 仅一个域名即可运行全部服务
  • ✕ 依赖 Docker 环境
  • ✕ 可选组件多,资源占用较高

出处

本方案挖掘自开源项目 nextcloud/all-in-one,方案内容与实施命令均来自其 README 原文。

方案出处
nextcloud/all-in-one:📦 The official Nextcloud installation method. Provides easy deployment and maint
10389 star 📦 The official Nextcloud installation method. Provides easy deployment and maintenance with most features included in this one Nextcloud instance.

本方案由真实开源项目挖掘整理,实施命令均来自其 README 原文,安装使用请遵循项目开源协议。