如何使用 Nextcloud 搭建个人网盘

如何使用 Nextcloud 搭建个人网盘

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

这款产品十分优秀,今天,我们就教大家使用3A平台云服务器来部署Nextcloud服务。

连接服务器

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

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

img

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

img

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

安装LNMP集成环境

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

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

sudo apt-get update
sudo apt-get install nginx -y

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

sudo apt-get install mysql-server -y

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

imgimg

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

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/这个目录下。

ubuntu@VM-0-7-ubuntu:~$ cd /etc/nginx/conf.d/
ubuntu@VM-0-7-ubuntu:/etc/nginx/conf.d$

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

sudo nano default.conf

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

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的文件。具体操作如下:

cd /etc/nginx/sites-available
sudo rm default

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

sudo service nginx restart

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

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

下载Nextcloud

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

img

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

上传Nextcloud

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

img

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

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这些模块,具体如下。

img

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

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即可。

img

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

img

posted @ 2022-08-29 14:26  奋斗的工程师  阅读(1012)  评论(0编辑  收藏  举报