
原文链接:https://www.moerats.com/archives/429/ ,有更改
说明:关于 NextCloud
安装方法之前说了两种了,常规的 lnmp
环境搭建和使用 Docker
安装,参考:一款不错的个人私有云:NextCloud 安装教程,使用 Docker 快速安装 NextCloud 个人私有云盘,现在再说另一种安装方法,使用 Snap
快速安装,由于 Snap
包自带 NextCloud
,所以安装快速简单,是这几种方法中最简单的一个,也很实用,有兴趣的可以尝试下。
# Snap 是什么?
Snap
的安装包扩展名是 .snap
,类似于一个容器,完全独立于系统,它包含一个应用程序需要用到的所有文件和库( snap
包包含一个私有的 root
文件系统,里面包含了依赖的软件包)。它们会被安装到单独的目录,各个应用程序之间相互隔离,互不影响。而且安装快捷、创建简单、运行安全,易管理。目前支持的主流发行版有 Ubuntu
、 Debian
等。
Snap 的用法
这里只简单说下,初步了解下就行了。
#查看 snap 版本信息 | |
snap --version | |
#找出所有 snap 应用 | |
snap find | |
#安装应用 | |
snap install 包名 | |
#重启应用 | |
snap restart 应用名 | |
#升级应用 | |
snap refresh 应用名 | |
#查看安装的应用 | |
snap list | |
#卸载应用 | |
snap remove 应用名 |
# 安装
由于 Ubuntu 16.04
系统自带 Snap
,为了方便,可以直接使用该系统。
Snap
包自带 NextCloud
,所以我们可以直接安装。
#更新系统 | |
apt-get update -y | |
#安装 NextCloud | |
snap install nextcloud |
这时候就可以打开 http://your_ip
进入登录页面了,如果想用域名登录并配置 SSL
证书的话,先别登录,请直接看后面。
# 配置域名
将域名解析至 VPS
的 IP
就可以使用域名登录了,然后再添加 Let’s encrypt SSL
证书并使用 https
访问。
添加 SSL 证书
使用命令:
nextcloud.enable-https lets-encrypt |
根据要求输入你的邮箱,域名即可!
然后就可以打开域名并设置账号和密码登录了。


更多使用命令和方法可以直接查看 Github
地址→传送门,基本上可以解决你的大部分疑惑。
# Nginx 反向代理
通过反向代理时,不需使用 nextcloud.enable-https lets-encrypt
申请域名,不过会稍微麻烦一点。
第一步,更改 nextcloud 的默认端口
sudo snap set nextcloud ports.http=185 | |
sudo snap set nextcloud ports.https=186 #这一步可选,因为我们不会使用 nextcloud 的 https 端口 |
第二步,添加 nextcloud 的 trusted_domains
sudo snap run nextcloud.occ config:system:set trusted_domains 1 --value=your.fancy.domain |
接着重启 nextcloud
sudo snap restart nextcloud |
然后在 Nginx 配置文件中设置反向代理,添加如下内容 (这是已有证书时的内容)
server { | |
listen 443 ssl; | |
server_name your.fancy.domain; | |
# 获取到的两个证书文件 | |
ssl_certificate /etc/nginx/certs/h1msk.cc/cert.pem; | |
ssl_certificate_key /etc/nginx/certs/h1msk.cc/privkey.pem; | |
# ssl设置 | |
ssl_session_timeout 5m; | |
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; | |
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; | |
ssl_prefer_server_ciphers on; | |
location / { | |
proxy_pass http://localhost:10080; | |
proxy_set_header Host $http_host; | |
proxy_buffers 256 4k; | |
proxy_max_temp_file_size 0; | |
proxy_connect_timeout 30; | |
proxy_cache_valid 200 302 10m; | |
proxy_cache_valid 301 1h; | |
proxy_cache_valid any 1m; | |
} | |
} |