Nextcloud

ownCloud/Nextcloud快速部署VMWare虚拟机

ownCloud、Nextcloud都提供了已经配置完毕的的虚拟机,方便快速部署Nextcloud/ownCloud。

本文以VMware为例。你可以使用VMware Workstation或者VMware Workstation Player

下载虚拟机文件

下载地址:https://www.techandme.se/nextcloud-vm/

除了VMware之外,它还提供其它版本的虚拟机文件。

在打开的页面里下载Nextcloud_Community_VM_PRODUCTION.rar

速度比较慢,建议挂个VPN下载。下载完毕后解压

得到3个文件:

 

挂载

打开VMWare,点击左上角的“新建”-》打开

然后找到刚才解压的文件夹,选择Nextcloud_Community_VM_PRODUCTION.vmx

挂载完毕后,系统会自动启动,启动后会有如下提示(请忽略右上角的音乐),点击“我已复制该虚拟机”。

稍等一小会就可以登录了,默认用户名为ncadmin(呃……这个用户名有点……),默认密码是nextcloud。

 

此时系统会自动启动设置程序,但是在启动之前我们还需要进行一些必要的修改,按下

Ctrl+C

退出。。因为这个虚拟机系统出自老外之手,所以我们需要先完成以下3项工作:

  • 关于键盘布局的修改
  • 检查网络是否正常
  • 开启SSH并连接(不是很必要,但开启后接下来的工作将会更方便)
  • 修改apt源(必要,除非你在国外或者有大把的时间可以用来等待)

修改键盘布局

默认的键盘布局是Swedish,与我们常用的有很大差别。稍后输入命令时可以对照下图。

方法1:

执行以下命令,执行后会出现一个设置界面。上下键选择,回车键确定,Tab键切换。(

-

对应你的键盘上的

/

sudo dpkg-reconfigure keyboard-configuration

先选择键盘型号,随便选择一个无妨,如果能找到你的键盘所对应的型号就再好不过了。

然后选择键盘布局,可以选择Chinese或者English(US)。

还有一些其它的设置,可以全部无视。

方法2:

也可以直接修改配置文件。

sudo vim /etc/default/keyboard

XKBLAYOUT

变量的值改为

us

,然后在终端(文字终端,不是虚拟终端,也就是Ctrl+Alt+F2或F3或F4.......)运行命令:

setupcon

让设置立即生效

sudo udevadm trigger --subsystem-match=input --action=change

检查网络连接是否正常

虚拟机默认使用桥接网络,如果你使用的是Windows7,应该不会有什么问题,你可以随便ping一个网站试试:

ping https://www.baidu.com

如果正常的话按Ctrl+C退出就可以了,如果提示找不到主机,请检查你的电脑的网络连接。

设置完毕后重启虚拟机然后检查网络是否已经正常,如果正常了就可以进入下一步了。

开启SSH

输入查看虚拟机分配到的IP地址。

ifconfig

例如下图中的192.168.3.3

打开Putty或者XShell等SSH工具,新建一个连接

连接后会提示输入密码,与在虚拟机里相同,默认用户名是ncadmin,密码为nextcloud。

连接后稍等一会,会自动出现设置界面。

$~: sudo bash /var/scripts/nextcloud-startup-script.sh

仍然,按下

Ctrl+C

退出,我们还要做一件事。

修改apt源

配置文件默认使用国外的源,下载速度非常之慢。所以我们要换成国内的源。

我这儿使用阿里云源,当然你也可以用别的。

1.备份系统默认的源

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bk

2.修改/etc/apt/sources.list

sudo vim /etc/apt/sources.list

把下面的内容粘贴进去:

# deb cdrom:[Ubuntu 16.04 LTS _Xenial Xerus_ - Release amd64 (20160420.1)]/ xenial main restricted
deb-src http://archive.ubuntu.com/ubuntu xenial main restricted #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse #Added by software-properties
deb http://archive.canonical.com/ubuntu xenial partner
deb-src http://archive.canonical.com/ubuntu xenial partner
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security multiverse

3.更新apt-get

sudo apt-get update

到此准备工作已经完毕了,接下来是对虚拟机的配置。

配置虚拟机

启动配置工具:

sudo bash /var/scripts/nextcloud-startup-script.sh

输入默认密码nextcloud,按

回车进入下一步后,配置工具会先进行一些系统层面的配置并检查网络是否正常

网络检查完毕后,会询问是否自动寻找一个更好的apt源(恕我直言,它自动寻找到的源也相当的慢,所以之前选择手动配置)。我们之前已经配置好了,就不必再寻找了,输入

N

,回车进入下一步。

 

确认后稍等一下,安装脚本会自动启动。如下图

安装脚本包含以下几部分:

  • 为服务器生成新的SSH密钥
  • 生成MySQL密码
  • 设置UTF8mb4
  • 安装phpMyAdmin并加密
  • 安装选定的APPS并自动设置它们
  • 设置主机名
  • 将系统和nextcloud升级到最新版本
  • 为Nextcloud设置安全的权限
  • 设置新的键盘布局
  • 修改时区
  • 设置固定ip

按回车开始配置,接下来它会询问你一些问题。

1.Do you run this script on a remote VPS like DigitalOcean, HostGator or similar?

你是在VPS上运行的这个安装脚本吗?

当然不是了,反正我是在家里的电脑上运行的,输入

N

,回车

2. 按下回车后,脚本会检查你的ip地址并把它设置为静态的。

 

3.Current keyboard layout is cn    Do you want to change keyboard layout?

询问是否要切换键盘布局,之前已经切换过了,而且我们再用SSH工具连接,所以不需要改了。输入

N

,回车

4.接下来是更新.htaccess文件,并创建文件夹、设置文件夹权限。之后生成新的SSH Keys,然后生成MySQL密码(下图为正正在生成)。

MySQL密码生成后,你估计还没来得及看清就已经刷过去了。

现在你知道为什么我要用SSH工具了吗?

你只需要轻轻拖动右侧的滑块,查看刚刚没来得及看清的MySQL密码。

别愣着了,赶紧找个小本本记下来……

5.将滑块拖到最下面,继续配置。

询问是否安装SSL

其实我不建议安装SSL,毕竟在局域网内使用没多少安全风险,而且Let‘s Encrypt签发证书需要验证ip地址,局域网ip是无法通过验证的(即使绑定了域名)。

当然,在配置完毕后,如果你给局域网ip绑定了一个域名并打算尝试一下的话,可以运行这个命令:

sudo bash /var/scripts/activate-ssl.sh

6.选择要安装的组件

虚拟机提供了以下组件可供安装

  • phpMyAdmin         (可视化MySQL管理工具)
  • Collabora                 (在线编辑)
  • Nextant                    (全文搜索)
  • Passman                  (密码存储)
  • Spreed.ME              (视频通话)


按照自己的需求选择就行了。因为要解析域名,局域网中不建议选择Collabora,有耐心的话可以自己试试。

 

7.修改时区

默认时区为Europe/Stockholm,按任意键修改时区。

先选择地理位置为“Asia”,

然后选择时区为“Shanghai”

8.修改ncadmin的密码。

我们用来登录服务器的账户ncadmin的默认密码一直是nextcloud,为了安全要修改为你自己的密码:

同样的,也为Nextcloud的管理员账户ncadmin重新设置一个密码:

9.安装Preview Generator

接下来会自动安装Preview Generator,可能会花费一点时间,耐心等待即可。

Module status disabled.
To activate the new configuration, you need to run: service apache2 restart
Installing Preview Generator...
tar (child): /var/www/nextcloud/apps/previewgenerator.tar.gz: Cannot open: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now
rm: cannot remove 'previewgenerator.tar.gz': No such file or directory
[\] Creating possible missing Directories
chmod Files and Directories
[/] chown Directories
chmod/chown .htaccess - Repair MySQL collation - All tables already have the correct collation -> nothing to do - Repair mime types - Clean tags and favorites - 0 tags of deleted users have been removed. - 0 tags for delete files have been removed. - 0 tag entries for deleted tags have been removed. - 0 tags with no entries have been removed. - Repair invalid shares - Remove shares of a users root folder - Move .step file of updater to backup location - Add move avatar background job - Repair step already executed - Add preview cleanup background jobs - Fix potential broken mount points - No mounts updated - Repair language codes - Install new core bundle components - Fix component of birthday calendars - 1 birthday calendars updated. - Fix broken values of calendar objects 0 [>---------------------------] - Registering building of calendar search index as background job - Repair step already executed - Fix the share type of guest shares when migrating from ownCloud - Copy the share password into the dedicated column - Move theming files to AppData storage - No theming logo image to migrate - No theming background image to migrate - Copy twofactor backup codes from legacy table
System will now upgrade...

10.安装系统更新

接下来安装系统更新,时间会有些长,不必担心。

提示是否启用igbinary serializer支持,输入yes,回车。

11.完成安装

记住下面的几项信息,按任意键重启系统。

完成Nextcloud的安装

等待虚拟机重启完成后,在浏览器地址栏输入上图中第一项所给出的ip,比如192.168.3.3。

不要理会下方给出的默认密码,我们已经设置好了自己的

访问http://ip/nextcloud,或者点击页面中给出的地址。

然后用ncadmin用户登录,密码之前已经重新设置过了。

到此,Nextcloud虚拟机已经完成部署,Enjoy it!

 

Webmin介绍

虚拟机还提供了套功能强大的Web管理系统,用于管理服务器的各项配置(建议访问第二个HTTPS链接):

登录Webmin,默认用户为ncadmin,密码与Linux的密码相同,之前已经设置过了。

 

(9)

本文由 橙叶博客 作者:FrankGreg 发表,转载请注明来源!

热评文章

评论:

18 条评论,访客:18 条,博主:0 条
  1. 开
    发布于: 

    我安装过不了,咋回事啊,提示网络”network not ok…..等字”,我用Ubuntu是18的

    • FrankGreg
      FrankGreg发布于: 

      虚拟机的网络问题吧

  2. 876****58@qq.com
    876****58@qq.com发布于: 

    请问安装后如何拓展硬盘,现在默认数据盘只有40G,应该不够用?

  3. chergen
    chergen发布于: 

    写的太详细了,谢谢!
    可是我安装完了之后,怎么提示“通过不被信任的域名访问”,要求我修改config/config.php 中的 “trusted_domains” 设置,可是用ncadmin没有/var/www/nextcloud/目录权限。
    请问:
    1、你知道root账号的默认密码吗?
    2、config.php文件在哪个目录?
    3、是因为哪个步骤安装的不对吗?
    不胜感激!

    • FrankGreg
      FrankGreg发布于: 

      ncadmin可以在命令前加sudo获取root权限.
      如果你始终从一个地址访问Nextcloud,理论上是不会出现这种情况的.所以这个..很难判断.

  4. 枫影
    枫影发布于: 

    已经搞定了,谢谢

  5. 枫影
    枫影发布于: 

    导入OVF虚拟机文件,开启虚拟机后全自动就进入了脚本模式自动开始执行,这种状态下,退也退不出来,如何更改键盘???
    请教!

    • 枫影
      枫影发布于: 

      已经搞定

  6. 滚雪
    滚雪发布于: 

    windows下用一键php环境有可以部署成功吗?还是彻底官方都不支持

  7. app
    app发布于: 

    好文章,小白我按这个过程安装好了,在局域网内,插件选择的是Collabora,域名取消了,但是装好后上nextcloud里找不到Collabora呀。想请教,谢谢了!

    • app
      app发布于: 

      我的域名可以解析,可以ping,出ip地址。为什么SSL脚本还是报告域名没有有效的IP地址。应该怎么做呢?

      • FrankGreg
        FrankGreg发布于: 

        那个脚本是基于Let’s Encrypt的,Let’s Encrypt不支持给局域网ip颁发SSL证书

        • app
          app发布于: 

          谢谢回复。我放弃了,过程中我知道了内网穿透和动态解析,但是发现要花钱,要是花了钱能成功不?:P。
          如果买个阿里云ECS,比如1兆1G的,接下来应该怎么做呢?
          如果买个入门web服务器(少买几个月哈哈),接下来怎么做呢?我仅仅是想部署collabora。
          best regards

          • FrankGreg
            FrankGreg发布于: 

            如果觉得内网穿透太麻烦就不要折腾了。
            VPS可以的,建议不要买阿里云ECS等国内的VPS,因为要使用web应用的话需要备案。推荐vultr,很灵活,不要用bandwogon。
            在选购之前至少有基本的Linux知识,一些教程可以在本博客里找到。

  8. hu
    hu发布于: 

    老哥,写了很多关于搭建私有云的文章,感激不尽!问几个问题,不知道有没有空回答
    1、搭建完成之后,我想要把数据挂载到iscsi存储,该怎么做呢
    2、提示是否设置静态IP那里还有之后等待系统更新的时候,花的时间非常久,是不是因为源里面没有删除原来的ubuntu源呢
    谢谢!

  9. lee
    lee发布于: 

    楼主,网盘里面怎么跟你截图不一样?只有一个Nextcloud_Community_VM_PRODUCTION.ova~~~

    • FrankGreg
      FrankGreg发布于: 

      哥们你下载错了……

    • T先生
      T先生发布于: 

      下面写了的:[If you want the original .VMDK then you can get it on Github.]

发表评论

This site uses Akismet to reduce spam. Learn how your comment data is processed.