使用 Snaps 快速安装 NextCloud 11

2017-7-19 17:36 Herald 1959 NextCloudSnapsUbuntu 16.04

Snaps 是一种全新的 Linux 软件包格式,与传统的 .deb 或 .rpm 软件包只能在特定系统上安装不同,snap 软件包能够实现跨发行版安装,详情查阅《Snap 是什么?》。

本文以 ubuntu 16.04 为例介绍如何使用 Snaps 在云服务器上快速安装 NextCloud 11。

准备工作

在继续本指南之前,你应该先了解《Ubuntu 16.04 服务器初始化设置指南》。

如果你还没有云服务器,请参考下列指南创建:

配置要求

为了 NextCloud 稳定运行,请确保你创建的云服务器内存不低于 512MB。

特别提示:存储在 NextCloud 中的数据会随着使用越来越多,因此,要提前规划充足的存储空间。

示例信息

为确保本指南的可用性,我在 Vultr 创建了一台云服务器,配置如下:

  • 位置:Silicon Valley – 硅谷
  • CPU:1 vCore
  • 内存:1024 MB
  • 硬盘:25 GB SSD
  • 系统:Ubuntu 16.04 x64
  • 主机名:ubuntu-1g-sv
  • IP 地址: 45.63.45.63 (非真实地址,仅用于演示)

这里我创建了 herald 普通用户,它能够通过执行 sudo 命令获得 root 权限,相关内容请参考 《Ubuntu 16.04 服务器初始化设置指南》。

通过 SSH 连接到服务器

如果你还不知道如何登陆你的云服务器,请先阅读《如何使用 SSH 连接到你的云服务器》。

192:~ Herald$ ssh herald@45.63.45.63

The authenticity of host '45.63.45.63 (45.63.45.63)' can't be established.
ECDSA key fingerprint is SHA256:QlYMhDOUvE6MqCvCzmqagHFxri/QtjZzp1FmPxWgB1A.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '45.63.45.63' (ECDSA) to the list of known hosts.
Welcome to Ubuntu 16.04.2 LTS (GNU/Linux 4.4.0-83-generic x86_64)

* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage

16 packages can be updated.
14 updates are security updates.

Last login: Wed Jul 19 06:16:02 2017 from 183.192.77.126

安装 NextCloud

第一步 更新服务器

更新软件列表

herald@ubuntu-1g-sv:~# sudo apt update

执行软件更新

herald@ubuntu-1g-sv:~# sudo apt -y upgrade

第二步 检查 snap 是否已安装

Ubuntu 16.04 默认预装 snap,可以执行 snap --version 命令即可查看版本信息:

herald@ubuntu-1g-sv:~$ sudo snap --version
snap 2.25
snapd 2.25
series 16
ubuntu 16.04
kernel 4.4.0-83-generic

第三步 搜索 NextCloud

使用 snap find 命令搜索软件:

herald@ubuntu-1g-sv:~$ sudo snap find nextcloud

Name      Version     Developer   Notes Summary
...
nextcloud 11.0.3snap6 nextcloud - Nextcloud Server
...

使用 snap info 命令可查看软件详情:

herald@ubuntu-1g-sv:~$ sudo snap info nextcloud

name: nextcloud
summary: "Nextcloud Server"
publisher: nextcloud
contact: https://github.com/nextcloud/nextcloud-snap
description: |
 Access & share your files, calendars, contacts, mail & more from any device,
 on your terms.
channels:
 latest/stable: 11.0.3snap6 (1982) 187MB -
...

第四步 安装 NextCloud

使用 snap install 命令安装软件:

herald@ubuntu-1g-sv:~$ sudo snap install nextcloud

2017-07-19T06:42:04Z INFO cannot auto connect core:core-support-plug to core:core-support: (slot auto-connection), existing connection state "core:core-support-plug core:core-support" in the way
nextcloud 11.0.3snap6 from 'nextcloud' installed

安装过程如下图,安装完毕后 NextCloud 就可以通过浏览器访问了。

第五步 设置管理员

在浏览器中输入云服务器的 IP 地址,按照 NextCloud 界面提示设置管理员的用户名和密码。

至此,NextCloud 网盘已经可以正常使用了,但想更方便安全的使用,还需要一些额外的配置。

配置 NextCloud

绑定域名

这里我用自己的一个国际域名 onit.run 演示,在域名解析平台上创建一条 A 记录,将 cloud.onit.run 这个域名绑定云服务器的 IP 地址 45.63.45.63

在浏览器中访问 cloud.onit.run 域名,会看到下图所示的提示,点击灰色按钮:

紧接着程序会跳转回 IP 地址,并显示下图所示的对话框,询问是否添加信任域名,点击 “是” 按钮。

现在,就可以使用 cloud.onit.run 域名访问 NextCloud 了。

启用 SSL 安全链接

启用 Let’s encrypt 的 SSL 证书,使用 nextcloud.enable-https lets-encrypt 命令:

herald@ubuntu-1g-sv:~$ sudo nextcloud.enable-https lets-encrypt

[sudo] password for herald:
In order for Let's Encrypt to verify that you actually own the
domain(s) for which you're requesting a certificate, there are a
number of requirements of which you need to be aware:

1. In order to register with the Let's Encrypt ACME server, you must
 agree to the currently-in-effect Subscriber Agreement located
 here: https://letsencrypt.org/repository/
必须同意用户协议

2. You must have the domain name(s) for which you want certificates
 pointing at the external IP address of this machine.
必须设置了指向当前服务器公网 IP 的域名

3. Both ports 80 and 443 on the external IP address of this machine
 must point to this machine (e.g. port forwarding might need to be
 setup on your router).
公网 IP 的 80 和 443 端口必须指向当前服务器

Have you met these requirements? (y/n) y

命令执行后,首先会出现以上交互内容,询问你是否满足以上要求,输入 y

Please enter an email address (for urgent notices or key recovery): your@email.com

输入一个接收通知和还原密钥的电子邮箱地址。

Please enter your domain name(s) (space-separated): cloud.onit.run

输入绑定的域名,将上面的 cloud.onit.run 替换成你自己实际绑定的域名。

看到以下结果,代表设置完成:

Attempting to obtain certificates... done
Restarting apache... done

再次使用域名访问时,可以看到浏览器地址栏已经出现了绿色的安全标识,超链接也从原来的 http 变成了 https

{{ headers["x-wp-total"] }} 条评论

{{ post_id = '2634' }}

回复 {{ reply_to }}