如何在 Ubuntu 22.04 上安装 Nextcloud AIO如何在 Ubuntu 22.04 上安装 Nextcloud AIO如何在 Ubuntu 22.04 上安装 Nextcloud AIO如何在 Ubuntu 22.04 上安装 Nextcloud AIO
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

如何在 Ubuntu 22.04 上安装 Nextcloud AIO

发表 admin at 2025年2月28日
类别
  • 未分类
标签

Nextcloud AIO 代表 Nextcloud All in One。它是一个基于 docker 的安装程序,使部署 Nextcloud 变得轻而易举。它具有以下功能和应用程序:

  1. 下一云
  2. Nextcloud Office - 它基于 Collabora Online Development Edition (CODE),而后者又基于 LibreOffice。您可以使用它与多个编辑器实时编辑文档。它支持所有流行的办公文件格式。
  3. Nextcloud Talk - 这是一种音频/视频和聊天通信服务。它支持加密呼叫、群组呼叫、屏幕共享、跨平台支持的 WebRTC 以及托管网络研讨会。
  4. Imaginary - 用于高级图像处理和转换。
  5. ClamAV - 用于防御病毒和恶意软件。
  6. Borgbackup - 提供内置的备份和恢复工具。
  7. ElasticSearch - 支持跨文档和文件的全文搜索。

先决条件

    运行 Ubuntu 22.04 的服务器,至少具有 1GB RAM 和 1 个 vCPU。如果您想使用 ClamAV,您将需要额外的 1GB RAM。您还需要额外 1GB RAM 用于 ElasticSearch(全文搜索)和 Nextcloud Talk。启用所有插件后,您至少需要 4GB RAM 和 2vCPU。

    指向您的服务器的完全限定域名 (FQDN)。出于我们的目的,我们将使用 nextcloud.example.com 作为域名。

    具有 sudo 权限的非 root 用户。

    简单的防火墙(UFW)已启用并正在运行。

    确保一切都已更新。

    $ sudo apt update && sudo apt upgrade
    

    安装基本实用程序包。其中一些可能已经安装。

    $ sudo apt install wget curl nano unzip -y
    

第 1 步 - 配置防火墙

在安装任何软件包之前,第一步是将防火墙配置为允许 HTTP 和 HTTPS 连接。

检查防火墙的状态。

$ sudo ufw status

您应该会看到类似以下内容的内容。

Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)

允许实际 Nextcloud 实例使用 HTTP 和 HTTPs 端口。

$ sudo ufw allow http
$ sudo ufw allow https

为 Nextcloud Talk 打开端口 3478。如果您不会使用它,可以跳过它。

$ sudo ufw allow 3478

打开端口 8080 和 8443,为 AIO 接口提供 HTTP 和 HTTPS 支持。

$ sudo ufw allow 8080/tcp
$ sudo ufw allow 8443/tcp

再次检查状态以确认。

$ sudo ufw status
Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
80/tcp                     ALLOW       Anywhere
443                        ALLOW       Anywhere
8080/tcp                   ALLOW       Anywhere
8443/tcp                   ALLOW       Anywhere
3478                       ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)
80/tcp (v6)                ALLOW       Anywhere (v6)
443 (v6)                   ALLOW       Anywhere (v6)
8080/tcp (v6)              ALLOW       Anywhere (v6)
8443/tcp (v6)              ALLOW       Anywhere (v6)
3478 (v6)                  ALLOW       Anywhere (v6)

第 2 步 - 配置主机名和时区

在继续之前,我们需要为系统设置正确的主机名。

打开主机名文件进行编辑。

$ sudo nano /etc/hostname

将值更改为您的完全限定域名。

nextcloud.example.com

按 Ctrl + X 并在出现提示时输入 Y 来保存文件。

打开主机文件进行编辑。

$ sudo nano /etc/hosts

在 127.0.0.1 localhost 行后添加以下行。如果存在以下内容,请将任何现有行替换为 IP 127.0.1.1 ubuntu-master。

<YourServerIP> nextcloud.example.com nextcloud	

按 Ctrl + X 并在出现提示时输入 Y 来保存文件。

检查服务器的当前时区。

$ timedatectl
Local time: Sun 2022-10-09 13:21:01 UTC
           Universal time: Sun 2022-10-09 13:21:01 UTC
                 RTC time: Sun 2022-10-09 13:21:01
                Time zone: Etc/UTC (UTC, +0000)
System clock synchronized: no
              NTP service: n/a
          RTC in local TZ: no

您可以使用以下命令查看可用时区的列表。

$ timedatectl list-timezones
...
Africa/Abidjan
Africa/Accra
Africa/Addis_Ababa
Africa/Algiers
Africa/Asmara
Africa/Asmera
Africa/Bamako
Africa/Bangui
...

如果它与您的偏好不符,请使用以下命令进行更改。

$ sudo timedatectl set-timezone America/Chicago

重新启动服务器。

$ sudo reboot

您现在可以按如下方式登录服务器。

$ ssh [email 

第 3 步 - 安装 Docker

添加 Docker 的官方 GPG 密钥。

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker.gpg

运行以下命令添加 Docker 存储库。

$ echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

更新系统以包含 Docker 的存储库。

$ sudo apt update

安装 Docker 和 Docker compose 插件。

$ sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin

本教程将使用 Docker Compose v2 插件而不是旧的旧二进制文件。因此,运行它的命令已从 docker-compose 更改为 docker compose,这反映在这里。

Docker 以提升的权限运行,因此您需要经常使用 sudo 来运行命令。更好的选择是将您的 Linux 用户帐户添加到 docker 用户组。

$ sudo usermod -aG docker ${USER}

$ {USER} 变量选取当前登录的系统帐户。如果您未使用要授予权限的用户登录,请将 $ {USER} 替换为用户名。

要申请新的组成员身份,请注销服务器并重新登录,或使用以下命令。系统将提示您输入用户密码。

$ su - ${USER}

第 4 步 - 配置 Docker Compose 文件

为 Docker compose 文件创建一个目录。

$ mkdir ~/nextcloud-aio

切换到目录。

$ cd ~/nextcloud-aio

创建并打开 docker compose 文件进行编辑。

$ nano docker-compose.yml

将以下代码粘贴到其中。

version: "3.8"

volumes:
  nextcloud_aio_mastercontainer:
    name: nextcloud_aio_mastercontainer # This line is not allowed to be changed

services:
  nextcloud:
    image: nextcloud/all-in-one:latest # Must be changed to 'nextcloud/all-in-one:latest-arm64' when used with an arm64 CPU
    restart: always
    container_name: nextcloud-aio-mastercontainer
    volumes:
      - nextcloud_aio_mastercontainer:/mnt/docker-aio-config # This line is not allowed to be changed
      - /var/run/docker.sock:/var/run/docker.sock:ro
    ports:
      - 80:80
      - 8080:8080
      - 8443:8443

按 Ctrl + X 并在出现提示时输入 Y 来保存文件。

第 5 步 - 运行 Nextcloud AIO

创建并启动 Docker 容器。

$ docker compose up -d

检查容器的状态。

$ docker compose ps

您将看到以下输出。

NAME                            COMMAND                  SERVICE             STATUS              PORTS
nextcloud-aio-mastercontainer   "start.sh /usr/bin/s…"   nextcloud           running (healthy)   0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp, 0.0.0.0:8443->8443/tcp, :::8443->8443/tcp

您还可以使用命令 docker ps 来获取更详细的状态。要检查容器日志,请使用命令docker logs 。

第 6 步 - 访问 Nextcloud AIO

打开 URL https://nextcloud.example.com:8443,您将看到以下屏幕。

复制屏幕上显示的密码,然后单击打开 Nextcloud AIO 登录按钮。

输入密码并单击登录按钮继续。

在新建 AIO 实例部分下输入您的域名 nextcloud.example.com,然后单击提交按钮开始安装 Nextcloud。

它将带您进入以下页面。

您可以在此处更改服务器时区并启动新的 Nextcloud 实例。选择要安装的附加组件,然后单击保存更改按钮保存选项。

单击启动容器启动 Nextcloud 及其插件容器。此过程将使用 Let's Encrypt 自动为您选择的域生成 SSL 证书,并运行 Apache 服务器容器以向公众公开 Nextcloud 实例。

此过程可能需要几分钟时间,具体取决于您要安装的插件数量。稍后,您可以在页面上看到容器的进度。

容器前面的黄色可能意味着它们正在启动,或者它们可能不健康。按重新加载按钮再次检查。所有容器成功启动后,您将获得 Nextcloud 实例的用户名和密码。

单击打开 Nextcloud 按钮启动 Nextcloud 安装。您还可以通过 URL https://nextcloud.example.com 直接访问它。您将被带到以下登录屏幕。

输入您从上一页获得的用户名 admin 和密码,然后按登录启动 Nextcloud 仪表板。

从这里开始,您就可以开始使用Nextcloud了。

第 7 步 - 备份和恢复 Nextcloud

在进行备份之前,您需要停止 Apache 容器,因为它会阻止 Nextcloud AIO 实例。您需要执行此操作才能在 AIO 界面上执行任何操作。运行以下命令停止 apache 容器。

$ docker stop nextcloud-aio-apache

访问https://nextcloud.example.com:8443登录AIO界面。

输入备份目录,然后单击提交按钮创建备份。您将看到以下屏幕。

Nextcloud AIO 将创建一个加密备份,并为您提供一个密码。文件夹中的所有备份将使用相同的密码。恢复实例需要密码。单击创建备份开始创建备份。该过程将要求确认。按是开始该过程。这将停止所有正在运行的容器并启动备份容器。

单击重新加载按钮刷新页面。单击小箭头可显示所有备份和恢复选项。

您可以在此处恢复现有备份、添加要备份的其他目录以及设置 cron 作业执行计划备份和更新的时间。

恢复Nextcloud

对于新安装,您可以使用现有备份进行备份。

如果备份存储在目录 /mnt/backup/borg 中,则将备份路径指定为 /mnt/backup。实际备份应始终位于子目录下。输入备份的路径和密码。

单击提交按钮继续恢复。

在开始恢复过程之前,单击测试路径和密码按钮验证备份路径和密码。

在这里您可以检查备份文件的完整性。从下拉菜单中选择正确的备份,然后单击恢复所选备份文件以启动该过程。

您可以在下一页看到正在运行的备份容器。等待一段时间,然后单击重新加载按钮以查看该过程是否完成。您将看到以下屏幕,确认恢复成功。

为远程上传准备备份

如果您想将备份同步或上传到远程位置,则必须准备备份存档。

安装 BorgBackup 工具。

$ sudo apt install borgbackup

将备份存档挂载到 /tmp/borg 文件夹。

$ sudo mkdir -p /tmp/borg && sudo borg mount "/mnt/backup/borg" /tmp/borg

系统将提示您输入备份密码。

Enter passphrase for key /mnt/backup/borg:

输入密码以装载存档。检查文件夹中已安装的存档。

$ sudo ls /tmp/borg -al
total 4
drwxr-xr-x  1 root root    0 Oct 10 19:13 .
drwxrwxrwt 13 root root 4096 Oct 10 19:13 ..
drwxr-xr-x  1 root root    0 Oct  9 23:15 20221010_041554-nextcloud-aio

您现在可以将文件 20221010_041554-nextcloud-aio 复制或同步到远程位置。

卸载档案。

$ sudo umount /tmp/borg

如果要删除现有的备份存档,可以使用以下命令来执行此操作。

$ sudo borg delete --stats --progress "/mnt/backup/borg::20221010_041554-nextcloud-aio"

第 8 步 - 更新 Nextcloud AIO/Nextcloud

Nextcloud AIO 每天运行一个 cronjob 来检查 Nextcloud AIO 和所有剩余容器的更新。

更新 Nextcloud 容器

Nextcloud AIO 界面将显示页面上任何容器的任何更新。要更新任何容器,请按停止容器按钮停止所有容器,然后再次启动它们以执行更新。

确保在启动容器之前备份数据。

更新 Nextcloud AIO 主容器

如果 AIO Mastercontainer 更新,您将在界面上收到有关更新的消息。单击更新按钮执行更新。

结论

我们关于在 Ubuntu 22.04 服务器上安装 Nextcloud AIO 的教程到此结束。如果您有任何疑问,请在下面的评论中发表。

©2015-2025 Norria support@alaica.com