前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >如何使用 Nextcloud 搭建个人网盘

如何使用 Nextcloud 搭建个人网盘

原创
作者头像
WOW彩笔er
修改于 2018-10-22 07:57:09
修改于 2018-10-22 07:57:09
31.1K12
举报

Nextcloud是一套用于创建网络硬盘的客户端-服务器软件。其功能与Dropbox相近,但Nextcloud是自由及开放源代码软件,每个人都可以在私人服务器上安装并运行它。与Dropbox等专有服务相比,Nextcloud的开放架构让用户可以利用应用程序的方式在服务器上新增额外的功能,并让用户可以完全掌控自己的数据。同时,Nextcloud可与在Windows、macOS或是多种Linux散布版上运行的客户端同步。Nextcloud用户可以管理日历、联系人、计划工作与流媒体。此外,用户也可以在Nextcloud上使用基于浏览器的文本编辑器、书签服务、缩略网址服务、相册、RSS阅读器与文件查看器。因为有良好的扩展性,Nextcloud可以透过鼠标点一下即可完成安装的应用程序强化其功能,并可连线至Dropbox、Google云端硬盘与Amazon S3等产品。

这款产品十分优秀,今天,我们就教大家使用腾讯云的CVM服务器来部署Nextcloud服务,并使用腾讯云的文件存储服务来存储我们的数据。为什么不用云硬盘来存储数据呢?文件存储服务有以下优点,CFS 兼容 POSIX 接口 ,可跨平台访问,并保证文件数据的一致性。用户的 CVM 实例可通过标准 NFS 协议访问 CFS 文件系统。CFS 文件系统的存储容量可弹性扩展、且不影响应用或服务。同时,文件系统的性能会随存储容量线性增长,提供高可靠、高性能的服务。CFS 可以动态分配容量而无需提前预购,您只需按实际使用量付费。CFS 的可多端共享特性也使用户无需重复购买其他的存储。CFS 标准文件存储为 3 份冗余,具有极高的可用性和可靠性。CFS 可以通过用户隔离,网络隔离,以及来访白名单来限制客户端的操作权限。在低频存储来说,CFS的优势很明显,所以我们使用CFS来存储数据。

连接服务器

首先检查你的服务器安全组设置,确保其开放SSH使用的22和HTTP访问使用80端口。然后我们通过SSH软件登录服务器,如果你本地电脑是Windows情况下可以使用putty等软件,Linux及MacOS请使用终端进行连接。

我这里以MobaXterm的终端软件为例,点击左上角的Session按钮,选择以SSH方式连接,在Remote host输入你的服务器的公网IP地址Specify username输入你的用户名,如果你的服务器是Ubuntu系统,请输入ubuntu如果是CentOS系统则输入root。这里我们是ubuntu系统,所以我们输入ubuntu

点击OK后,输入你设置的密码(默认不显示),即可连接到你的服务器,你会看到类似下面的页面。

这样,你就进到你的服务器的页面了。

安装LNMP集成环境

LNMP是Linux+Nginx+MySql+PHP的简称,安装LNMP的步骤比较冗长,具体详细步骤可以参考如何搭建 LNMP 网站服务环境自己动手搭建,本文只简述基础安装步骤。

首先我们安装Nginx,具体命令如下

代码语言:txt
AI代码解释
复制
sudo apt-get update
sudo apt-get install nginx -y

安装完Nginx后,我们就可以继续安装MySQL服务了,请按照下面步骤继续

代码语言:txt
AI代码解释
复制
sudo apt-get install mysql-server -y

安装程序将要求你输入你的数据库root用户的密码,如图。

img
img

这里请输入你想为root用户设定的密码,我这里输入passwd为例。自己设置的时候请设置较复杂的密码。输入完成后按下回车,系统将要求你再次输入一遍刚才设定的密码,同样,输入完成后我们按下回车。安装完成mysql后,我们就可以继续安装php开发环境了。这里我们安装php-fpm、php-mysql相关软件。

代码语言:txt
AI代码解释
复制
sudo apt-get install php php-fpm php-mysql -y

这里注意,你的php版本一定要是7.0以上版本,如果使用的是Ubuntu 16.04.1 LTS系统的话,按照本教程安装的php是7.0版本。最后一步,我们需要配置Nginx支持PHP,可以按照下面的步骤继续。首先我们需要进入Nginx配置目录。在/etc/nginx/conf.d/这个目录下。

代码语言:txt
AI代码解释
复制
ubuntu@VM-0-7-ubuntu:~$ cd /etc/nginx/conf.d/
ubuntu@VM-0-7-ubuntu:/etc/nginx/conf.d$

接下来我们要新建一个名为default.conf的配置文件,你可以使用任意编辑器来编写,这里我使用nano编辑器进行编写,可以使用下面的命令。

代码语言:txt
AI代码解释
复制
sudo nano default.conf

然后复制下面的配置到编辑器

代码语言:txt
AI代码解释
复制
server {
    listen       80;
    root         /usr/share/nginx/html;
    index  index.php index.html index.htm;
    location / {
      if (-f $request_filename/index.html){
    rewrite (.*) $1/index.html break;
      }
      if (-f $request_filename/index.php){
          rewrite (.*) $1/index.php;
      }
      if (!-f $request_filename){
          rewrite (.*) /index.php;
      }
        try_files $uri $uri/ =404;
    }
                                                        
    location ~ .php$ {
        fastcgi_pass  unix:/run/php/php7.0-fpm.sock;
        # 如果你的php版本低于7.0,请将unix:/run/php/php7.0-fpm.sock;替换为127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
}

然后按下键盘上的Ctrl+O键然后按下回车保存,然后按下Ctrl+W退出。接下来我们需要删除nginx默认的配置文件,不然我们定义的这个文件运行会报错。首先打开/etc/nginx/sites-available目录,然后删除默认的default的文件。具体操作如下:

代码语言:txt
AI代码解释
复制
cd /etc/nginx/sites-available
sudo rm default

然后我们需要重启nginx以确保其正常运行,可以使用sudo service nginx restart这个命令。

代码语言:txt
AI代码解释
复制
sudo service nginx restart

没有报错证明系统一切正常,我们可以继续部署Nextcloud了。

新建CFS服务

我们可以通过在腾讯云控制台新建CFS服务。点击新建按钮,然后填下你CFS服务的名称,地域(建议与你CVM部署在同一地域下),比如你服务器部署在成都,则地域填写成都即可。

点击确定后,我们就可以开始使用CFS服务啦!

我们点击系统分配给你服务的ID,获取其他连接信息。

接下来,我们就可以在我们的服务器上挂载CFS服务啦,不过我们要安装一个名为nfs-common的服务。使用下面的命令进行安装。

代码语言:txt
AI代码解释
复制
sudo apt-get install nfs-common -y

安装完成后,我们需要进行挂载,首先创建一个文件夹,名称可以自定义,我这里以qcloud-cfs为例,目录创建在ubuntu用户的根目录下,为了方便数据写入,我给这个目录赋予可写入权限。

代码语言:txt
AI代码解释
复制
cd /home/ubuntu/
mkdir qcloud-cfs
sudo chown www-data:www-data qcloud-cfs
cd qcloud-cfs
pwd

执行完pwd命令,系统输出/home/ubuntu/qcloud-cfs/,这就是你当前创建的需要挂载的目录,接下来我们进行挂载,使用mount命令即可,具体如下

代码语言:txt
AI代码解释
复制
sudo mount -t nfs -o vers=4 10.**.**.33:/ /home/ubuntu/qcloud-cfs/

/home/ubuntu/qcloud-cfs/是你在本地自己创建的目录,/是指你在CFS文件系统里面创建的根目录。10.**.**.33是腾讯云CFS系统分配给你的IP。执行完成后,你的CFS系统将会自动被挂载在/home/ubuntu/qcloud-cfs/目录下,后面我们配置Nextcloud将数据全部保存在/home/ubuntu/qcloud-cfs/目录,也就是会自动保存在腾讯云CFS上。CFS并非免费产品,其是收费产品,具体计费情况如下表,如果你数据较少,我推荐你用CVM自带的云硬盘,如果数据较大,还是推荐使用CFS产品。目前CFS还是有免费优惠的,截止到 2018 年 10 月 31 日,每个 CFS 的用户(主账户和协作者账户视为一个用户 - 相同 APPID)可以享受 10 GB 的免费存储量(不区分是 NFS 文件系统还是 CIFS/SMB 文件系统),每个计费周期内若用量超出免费额度,超出部分将按阶梯价格收取费用。

地区

中国大陆

香港

阶梯价格

0 ~ 10TB 0.35 元/GB/月 (0.00048611 元/GB/时)

1 TB 以内 0.63 元/GB/月 (0.00087500 元/GB/时)

10 TB以上 0.33 元/GB/月 (0.00045833 元/GB/时)

1 TB - 10 TB 0.58 元/GB/月 (0.00080556 元/GB/时)

10 TB - 50TB 0.52 元/GB/月 (0.00072222 元/GB/时)

50 TB 以上 0.46 元/GB/月 (0.00063889 元/GB/时)

部署Nextcloud

LNMP环境搭建完成及新建CFS服务后,就可以部署Nextcloud网盘服务啦~!

下载Nextcloud

在上一步中,我们已经获取到了上传Nextcloud所需要的FTP服务账户及密码,接下来,就是下载安装Typecho的安装文件了,我们点击这里下载,点击Download Nextcloud按钮即可开始下载,本文撰写时,最新版是14.0.3版本。

接下来,将文件解压到本地,我们就可以继续下一步了。

上传Nextcloud

这一步,我们将Nextcloud安装包通过MobaXterm终端上传到服务器,操作很简单,只需要点击上传按钮,然后选择你的Nextcloud即可。

上传完成后,我们需要将刚上传的文件解压到你在LNMP中设置的root目录,我们这里定义的目录是/usr/share/nginx/html,解压完成后,我们需要将源码文件从nextcloud中抽取出来,并给你的网站目录赋予可执行权限。

代码语言:txt
AI代码解释
复制
sudo unzip nextcloud-14.0.3.zip -d /usr/share/nginx/html
sudo mv /usr/share/nginx/html/nextcloud/* /usr/share/nginx/html/
sudo chown -R www-data:www-data /usr/share/nginx/html

接下来,我们就可以访问你的服务器IP地址来安装Nextcloud了。

安装Nextcloud

当我们尝试访问你部署的服务器http://你的服务器IP/index.php,我们发现Nextcloud会报错,需要我们安装PHP zip、PHP dom、PHP XMLWriter、PHP XMLReader、PHP libxml、PHP mb multibyte、PHP GD、PHP SimpleXML、PHP cURL这些模块,具体如下。

我们可以使用下面的命令安装这些模块。

代码语言:txt
AI代码解释
复制
sudo apt-get install php7.0-zip php7.0-xml php7.0-curl php7.0-gd php7.0-mbstring -y

安装完成后,我们就可以正常打开http://你的服务器IP/index.php继续安装了,系统要求你提供管理账户、密码、数据库用户名、数据库密码、数据库名、及数据库地址。管理用户名及密码自定义,但一定要记清楚,这里以adminpasswd为例。数据目录就是存放你文件的目录,这里填写我们映射CFS文件的目录/home/ubuntu/qcloud-cfs/。数据库用户名填写root密码填写你安装数据库时候设置的密码。数据库名自定义,我这里以nextcloud为例。数据库地址默认localhost即可。

设置完成后,点击安装完成按钮,即可完成安装。接下来,我们就可以使用Nextcloud服务啦!

总结

当然,这只是手动部署Nextcloud,步骤比较繁琐,适合一些不常用的系统,搭建也是一种乐趣~如果你使用的是Ubuntu系统,可以通过snap工具一键搭建Nextcloud。关于snap搭建,我推荐你去腾讯云开发者实验室进行现场的实验学习。如果想部署的更加简便更加可迁移,可以通Docker来快速搭建,这个同样可以去腾讯云开发者实验室进行学习搭建。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
12 条评论
热度
最新
文章害人,nextcloud的配置稍微复杂,但是有官方操作文档的,其中nginx的配置文档直接就有现成配置好的,比这个详细多了,而且配置完成后在概览里面是没有警告的。照这个配置来,就算能安装到时候也是一大片报错。真不知道这种文章怎么会显示在第一页的
文章害人,nextcloud的配置稍微复杂,但是有官方操作文档的,其中nginx的配置文档直接就有现成配置好的,比这个详细多了,而且配置完成后在概览里面是没有警告的。照这个配置来,就算能安装到时候也是一大片报错。真不知道这种文章怎么会显示在第一页的
回复回复点赞举报
一步一步照做了👍
一步一步照做了👍
11点赞举报
👍
👍
回复回复点赞举报
66666666666666666
66666666666666666
回复回复点赞举报
支持一下~~~
支持一下~~~
回复回复点赞举报
6666666666666666
6666666666666666
回复回复点赞举报
还是个人网盘好使
还是个人网盘好使
回复回复点赞举报
6666
6666
回复回复点赞举报
写的挺好,方便分享一下腾讯云上bitwarden的自建方案吗
写的挺好,方便分享一下腾讯云上bitwarden的自建方案吗
回复回复点赞举报
支持一下~~~
支持一下~~~
回复回复点赞举报
https://market.cloud.tencent.com/products/25219 一键部署的镜像 试试 支持中英文
https://market.cloud.tencent.com/products/25219 一键部署的镜像 试试 支持中英文
回复回复点赞举报
加载更多
推荐阅读
编辑精选文章
换一批
如何使用 Seafile 搭建个人网盘
Seafile 是一款安全、高性能的开源网盘(云存储)软件。Seafile 提供了主流网盘(云盘)产品所具有的功能,包括文件同步、文件共享等。在此基础上,Seafile 还提供了高级的安全保护功能以及群组协作功能。由于 Seafile 是开源的,你可以把它部署在私有云的环境中,作为私有的企业网盘。Seafile 支持 Mac、Linux、Windows 三个桌面平台,支持 Android 和 iOS 两个移动平台。
硬盘侠
2018/10/22
21.8K2
如何使用 Seafile 搭建个人网盘
Ubuntu12.04快速部署 Nginx + MySQL + PHP + Memcached + XCache + phpMyAdmin
#装好后,配置文件都在/etc/nginx/目录下面,网站目录在/usr/share/nginx/www/下面
libo1106
2018/08/08
6610
如何部署 phpMyAdmin 服务
phpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库。借由此Web接口可以成为一个简易方式输入繁杂SQL语法的较佳途径,尤其要处理大量数据的导入及导出更为方便。其中一个更大的优势在于由于phpMyAdmin跟其他PHP程序一样在网页服务器上运行,但是您可以在任何地方使用这些程序产生的HTML页面,也就是于远程管理MySQL数据库,方便的创建、修改、删除数据库及数据表。也可借由phpMyAdmin创建常用的php语法,方便编写网页时所需要的sql语法正确性。
chen313
2018/10/29
4.7K0
如何部署 phpMyAdmin 服务
Ubuntu下手动安装NextCloud
安装完成后,浏览器访问http://your ip/,出现It works!网页表示安装成功。
墨文
2020/02/28
4.9K0
Ubuntu下手动安装NextCloud
利用NextCloud配置私有云 【原创】
利用NextCloud配置私有云 Write By CS逍遥剑仙 我的主页: www.csxiaoyao.com GitHub: github.com/csxiaoyaojianxian Email: sunjianfeng@csxiaoyao.com QQ: 1724338257 目录导航 NextCloud (https://nextcloud.com/) 是开源云盘服务器,此处利用 LEMP 搭建 NextCloud 运行环境-MariaDB, PHP-FPM 和 Ng
CS逍遥剑仙
2018/04/28
7.3K1
lnmp环境快速搭建及原理解析
刚开始学习php的时候是在wamp环境下开发的,后来才接触到 lnmp 环境当时安装lnmp是按照一大长篇文档一步步的编译安装,当时是真不知道是在做什么啊!脑袋一片空白~~,只知道按照那么长的一篇文档一步步的来做就能实现lnmp的搭建。最近工作闲暇之余又想起来了这个悲惨的事情,然后我就想能不能不看文档就把lnmp环境搭建起来呢(当然我知道有一键安装脚本这个东东,我们暂时把它忽略因为它真的是太简单啦)?当时我的想法是反正 l(linux)+ n(nginx)+ m(mysql)+ p(php)设计到的东西也就这四种,那我使用 apt-get (ubuntu 系统为例)直接安装不就好啦,至于每个软件之间的通讯那就再另想办法了,无非是通过什么配置或者驱动什么的连接起来的,于是我变开始了我的折腾之旅。。。。
码缘
2019/05/31
9580
如何快速搭建高性能网站:详细教程(适用Ubuntu)(不是面板)
搭建一个高性能的网站不仅需要选择合适的内容管理系统(CMS),还需要优化服务器环境和配置。本文将详细介绍如何在Ubuntu服务器上搭建一个高性能网站,包括安装LNMP环境、配置优化以及一些安全和性能优化建议。
小原酱
2024/11/08
1830
树莓派折腾记:部署LNMP环境并实现多站点共存
文章更新:   20161212 初次成文   20170601 更新多站点的部署方式并增加注意事项 问题提出:   谈到树莓派能折腾些什么,不得不提的就是把树莓派部署所需环境在小派上跑网站了。在这篇文章中,小苏会向大家介绍如何在树莓派上部署LNMP环境并实现多站点访问。   由于树莓派在软件和硬件上的更新,互联网中大多数有关在树莓派上部署LNMP环境的教程大多基于"树莓派2代",经过小苏的测试,这些教程已经不再适用于小苏手中的"树莓派3代"了,经过一番搜索和折腾,小苏最终找到了使用于3代的部署教程,并
美丽应用
2018/07/20
1.4K0
如何搭建 LNMP 网站服务环境
LNMP指的是一个基于CentOS/Debian编写的Nginx、PHP、MySQL一键安装包。可以在VPS、独立主机上轻松的安装LNMP生产环境。LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。
火星救援队长
2018/10/19
4.3K0
如何搭建 LNMP 网站服务环境
在 Ubuntu 16.04 下配置 Nginx + PHP 7.0 + MySQL 环境
之前我用 lnmp.org 的一键安装包来配置 web 服务器,一直懒得去动,对 nginx 的配置也是一知半解。买了新的 vps 之后需要重新配置服务器环境,趁这个机会让我手动一个个安装它们并且熟悉熟悉吧。
zgq354
2019/11/24
2K0
NextCloud私有云盘安装部署记录
描述:由于个人家里的NAS以及公司团队对私有网盘的进行日常工作文件同步以及协同办公的需求,所以有了这篇文章,讲解记录从选项到安装以及同步使用等相关操作;
全栈工程师修炼指南
2022/09/29
26.6K0
NextCloud私有云盘安装部署记录
NextCloud安装和使用图文教程
注:本部分分享的是使用Nginx来搭建和运行NextCloud,属于手动安装系列,如果你觉得麻烦你也可以使用NextCloud官方的一键安装包。参考:Nextcloud个人云存储绝佳选择:一键自动安装方法和云盘使用体验。
用户8832582
2021/11/05
70.2K1
Nextcloud 搭建自己的云盘
  今年来,国内众多免费网盘相继倒下,于是大家都转投了百度网盘门下,然而这只独角兽限速倒逼开通会员下载速度依旧很难改善,还能维持多久也一直都是一个未知数。也有部分人开始涌向国外的有免费额度的网盘,比如以前以数据安全保障出名的 Mega (由于核心人员出走最近好像也不行了)、微软的 OneDrive、老牌网盘 Dropbox、Box、谷家的 Google drive(除了微软的网盘其他几个网速都不怎么好)。在这么多产品中,一个计算机技术人员却难以选择一款合适的网盘,于是用 VPS 和对象存储搭建自托管的方案开始成为一种可行的方案。Nextcloud 就是这样一款网盘,来源于 Owncloud 却较之更加强大、安全(集成 Office 文档、图片相册、日历、RSS 阅读,几乎等同于一个私有的 Dropbox),搭建也是非常简单,适合大部分技术栈的技术人员。当然,此处先谈如何搭建 Nextcloud,至于结合对象存储下回再说。
zhonger
2022/10/28
9.8K0
Nextcloud 搭建自己的云盘
手把手教你搭建个人网站五:WordPress搬家&备份
建好基于WordPress的个人网站后,如果我们想整个搬到另一个服务器,应该怎么弄呢?为了预防不可预知情况的发生,我们又该如何备份网站信息呢? 备份WordPress,其实包括两个方面:WordPress文件以及WordPress数据库。 1.备份WordPress文件 这部分很简单,通过FTP,或者最简单的sz命令拷贝到本地就可以了~ 拷贝内容包括Nginx对应root路径下所有文件,例如我的Nginx的root路径为/var/www,那么我就把这个文件夹下的所有文件都拷贝到本地。 2.备份WordP
企鹅号小编
2018/02/27
2.5K0
手把手教你搭建个人网站五:WordPress搬家&备份
如何在Ubuntu 14.04上安装Linux,Nginx,MySQL,以及PHP(LNMP)堆栈
LNMP软件堆栈是一组可用于为动态网页和Web应用程序提供服务的软件。这是一个描述Linux操作系统的首字母缩写词,带有Nginx Web服务器。后端数据存储在MySQL中,动态处理由PHP处理。
大瓜皮
2018/08/10
1.2K0
使用 NextCloud + COS 搭建个人网盘
NextCloud 是一款用于创建网络硬盘的开源客户端和服务器软件。每个人都可以借助该软件自行搭建私人的网盘服务。 NextCloud 的服务端采用 PHP 编写,底层存储默认保存在服务器的本地硬盘中。通过修改 NextCloud 配置,可以使用腾讯云对象存储 COS 作为底层存储,享受对象存储 COS 带来的更低廉的存储成本、更高的可靠性和容灾能力,以及无限的存储空间。 本文将介绍 NextCloud 服务端所依赖的环境,并分析对比本地存储与对象存储 COS 的区别,最后将讲解实战搭建个人网盘。 注
云存储
2020/08/27
4.7K0
基础建站:Ubuntu 16.04下安装WordPress程序
WordPress.com是一个博客寄存服务站点,由Automattic公司所持有。2005年8月8日进行Beta测试,2005年11月21日向公众开放。它使用的是开源博客软件WordPress。
禹都一只猫olei
2018/08/02
7330
基础建站:Ubuntu 16.04下安装WordPress程序
利用NextCloud配置私有云
利用NextCloud配置私有云 利用NextCloud配置私有云 安装MariaDB 为NextCloud创建数据库和用户 安装PHP和相关模块 下载NextCloud 安装配置Nginx 完成安装 NextCloud (https://nextcloud.com/) 是开源云盘服务器,此处利用 LEMP 搭建 NextCloud 运行环境-MariaDB, PHP-FPM 和 Nginx (Ubuntu 16.04) 1. 安装MariaDB Ubuntu 16.04 安装 MariaDB 更新升级系统
csxiaoyao
2018/05/11
20.4K1
腾讯云服务器上部署LNMP环境
最近在学Laravel,同参考文章,本来只是在虚拟机上运行,但现在正好因为手上有腾讯云服务器,所以就直接拿来部署Laravel。
用户6468650
2019/10/28
6K0
如何在Ubuntu 14.04上使用Nginx安装HHVM
HHVM是一个用于执行PHP和Hack代码的开源虚拟机。HHVM由Facebook开发和支持,这一事实最近引起了越来越多的人们对HHVM的关注。
木纸鸢
2018/09/30
1.3K0
推荐阅读
相关推荐
如何使用 Seafile 搭建个人网盘
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档