1panel 面板怎么部署 Nextcloud

chinaz
chinaz 正式会员超兽战士
发布于 2026-10-07 10:54 ·1 浏览 ·0 回复

照着这篇做完,你能在一台干净的 Linux 服务器上用 1Panel 面板部署出一套可外网访问、带 HTTPS 的 Nextcloud 私有网盘。

第一步:装好 1Panel 并放行端口

这一步要拿到 1Panel 的登录地址和账号密码,后面所有操作都在面板里点。用 SSH 登录服务器(Ubuntu 22.04 / Debian 12 都行,配置至少 2 核 4G、40G 磁盘),执行官方一键安装脚本:

curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sudo bash quick_start.sh

脚本会让你设置面板端口和安全入口,装完会在终端打印「面板地址 / 用户名 / 密码」,位置在 /opt/1panel。然后在服务器(或云厂商控制台)的安全组里放行:面板端口、80、443,还有后面给 Nextcloud 用的端口(比如 8080)。

注意:面板地址里的「安全入口」那一段路径不能丢,丢了会提示 404。密码只显示一次,先复制到记事本。

第二步:先建好数据库(可选但推荐)

这一步要有一个独立的 MySQL 库给 Nextcloud 用。进入面板左侧「数据库」→「MySQL」→「创建数据库」,填库名 nextcloud、用户名 nextcloud、密码自己设一个强密码,访问权限选「所有人(%)」或「本地服务器」,点「确认」。

注意:如果「数据库」页面提示没有可用的 MySQL 服务,先去「应用商店」搜索 MySQL 安装一个(选 8.0 版本),装完再回来建库。

第三步:应用商店一键安装 Nextcloud

这一步装出 Nextcloud 本体和它的 Web 容器。左侧「应用商店」→ 搜索框输入 Nextcloud → 点进应用卡片 → 点「安装」。在安装表单里填:

  • 名称:nextcloud
  • 版本:选最新的 apache 版(如 29-apache)
  • Web 端口:8080
  • 数据库服务:选第二步建好的 MySQL 服务,填入库名 nextcloud、用户名、密码
  • 管理员账号 / 密码:这就是你以后登录网盘的账号
  • 时区:Asia/Shanghai

点「确认」,等状态变成「已启动」。此时浏览器访问 http://服务器IP:8080 应该能看到 Nextcloud 登录页。

注意:如果应用商店里搜不到 Nextcloud,说明你的 1Panel 版本较旧(本文以 v1.10 及以上为例),先到「设置」→「面板设置」里检查更新,或改用「容器」→「编排」自己写 docker-compose 部署。

第四步:绑定域名并开启 HTTPS

这一步把 IP:8080 换成正经域名,并且是 https 访问。左侧「网站」→「网站」→「创建网站」,类型选「反向代理」,主域名填 nc.你的域名.com,代理地址填 http://127.0.0.1:8080,点「确认」。然后点这个网站的「配置」→「HTTPS」,勾选「Acme 账户」里已有的账号,点「申请证书」,申请成功后打开「HTTPS」开关并勾选「强制 HTTPS」。

注意:申请 Let's Encrypt 证书要求域名已经解析到这台服务器,且 80 端口能从公网访问,否则会报验证失败。

第五步:配置 trusted_domains 和反代参数

这一步解决「通过域名访问报不可信域名」的问题。进入「容器」→「容器」列表,找到 nextcloud 容器,点「终端」,连接后编辑配置文件:

vi /var/www/html/config/config.php

在 trusted_domains 数组里加上你的域名,例如:

'trusted_domains' => array (
  0 => '127.0.0.1:8080',
  1 => 'nc.你的域名.com',
),
'overwriteprotocol' => 'https',
'overwrite.cli.url' => 'https://nc.你的域名.com',

保存后用域名登录 Nextcloud 后台即可。

注意:改完 config.php 不用重启容器,刷新页面就生效。如果没生效,去「容器」里点该容器的「重启」。

第六步:调大上传限制和加定时任务

这一步解决大文件传不上去、后台提示「上次后台任务运行于 X 天前」的问题。回到「应用商店」→「已安装」→ 找到 Nextcloud → 点「参数」,在编排文件里给 nextcloud 服务加两行环境变量:

environment:
  - PHP_UPLOAD_LIMIT=10G
  - PHP_MEMORY_LIMIT=1G

保存后点「重建」。再进「计划任务」→「创建计划任务」,类型选「Shell 脚本」,周期选「每分钟」,脚本内容:

docker exec -u www-data nextcloud php -f /var/www/html/cron.php

注意:容器名不一定是 nextcloud,先在「容器」列表里确认实际名称再填。计划任务创建后手动点一次「执行」看有没有报错。

小结

  1. 先装 1Panel、放行端口,拿到面板账号密码。
  2. 在「数据库」里提前建好 Nextcloud 专用库,避免安装时卡在数据库连接。
  3. 「应用商店」搜 Nextcloud 一键安装,端口建议 8080。
  4. 用「网站 → 反向代理」绑域名,再申请 Let's Encrypt 证书并强制 HTTPS。
  5. 必须改 config.php 里的 trusted_domains 和 overwriteprotocol,否则域名访问会报错。
  6. 用环境变量调大 PHP 上传限制,用计划任务跑 cron.php,否则大文件和后台任务都会出问题。
版权声明:本文来自 GJ站长论坛《1panel 面板怎么部署 Nextcloud》
原文链接:https://www.gj0.com/thread-244.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。

全部回复 0

还没有回复,来抢沙发~