云耀服务器L实例部署Nextcloud企业云盘系统|华为云云耀云服务器L实例评测使用体验

news2024/11/19 18:37:50

文章目录

  • Nextcloud简介
    • 1.1 部署华为云云耀服务器L实例
      • 1.1.1 云耀服务器L实例购买
      • 1.1.2 云耀服务器L实例初始化配置
      • 1.1.3 远程登录云耀服务器L实例
  • 2. 云耀服务器L实例中间件部署
    • 2.1 安装配置环境
        • 2.1.1 安装基本工具
        • 2.1.2 安装MariaDB
        • 2.1.3 安装Nginx
        • 2.1.4 安装PHP
  • 3. 安装Nextcloud
      • 3.1 下载并解压到www目录
      • 3.2 生成SSL证书
      • 3.3 在Nginx配置
      • 3.4 初始化
      • 3.5 添加信任域名
      • 3.6 开启内存缓存
  • 4. NextCloud初始化
    • 4.1 NextCloud后台配置
  • 5. 总结

NextCloud是一款开源免费的私有云存储网盘项目,可以让你快速便捷地搭建一套属于自己或团队的云同步网盘,从而实现跨平台跨设备文件同步、共享、版本控制、团队协作等功能。我将通过华为云云耀服务器L实例CentOS 7.8、MariaDB、PHP 7、Nginx为环境部署Nextcloud。

Nextcloud简介

NextCloud是一款开源免费的私有云存储网盘项目,可以让你快速便捷地搭建一套属于自己或团队的云同步网盘,从而实现跨平台跨设备文件同步、共享、版本控制、团队协作等功能。

Nextcloud是一个网盘式文件管理系统,多用户权限管理,多客户端,使用简单。Nextcloud是owncloud的一个分支,由原创始人团队维护,是在owncloud被别的公司收购后,由创始人团队创立的新分支。

就像 mysql和mariadb。Nextcloud完全开源,功能强大,能够自由更改主题,无限制增加用户,有一个完善的应用中心(在线office办公,pdf在线浏览,图片缩略图浏览等功能)

image-20231015143744640

1.1 部署华为云云耀服务器L实例

1.1.1 云耀服务器L实例购买

进入华为云官网: https://www.huaweicloud.com/

进入控制台

image-20231015145023861

搜索云耀服务器HECS

image-20231015145120416

选择登录L实例控制台

image-20231015145202811

如果没有应用实例,则可以选择购买资源

image-20231015145509267

云耀服务器L实例在购买阶段相对于传统的华为云ECS服务器购买十分简单便捷

关于区域选择,可以按照下面规则选择合适的区域

  • 地理位置就近原则。根据用户群所在位置,应就近选择区域以减少网络时延,提高访问速度。
  • 不同区域价格差异。不同区域的服务器价格可能会有所不同,因此需考虑预算和成本效益。
  • 备案考虑。根据所在的行业和业务需求,有些区域可能需要特定的备案或审批手续,应该提前了解和考虑。
  • 多产品同区域内网互通。如果需要将多个华为云产品部署在同一区域内,以便实现内网互通,可以提高访问速度和数据传输效率。

由于NextCloud只支持linux操作系统,本次我选择的是Centos7.8版本

关于实例规格选择,这要根据大家的实际业务需求和资金进行综合考虑

综上考虑,我现在的区域为华北-北京四,系统镜像为Centos7.8,实例规格为2c-2G,先购买一个月

image-20231015150608062

大家也可以根据自己需求选择增配数据盘,主机安全,云备份等功能

image-20231015151017186

点击立即购买并支付费用,支付成功后回到云耀服务器L实例控制台等待机器创建成功。

image-20231015151046647

1.1.2 云耀服务器L实例初始化配置

进入云耀服务器L实例控制台,可以看到我们购买的实例

单击实例,进入控制界面

image-20231015151247966

在这里可以看到此服务器的一些基本信息

image-20231015151331606

首先需要重置密码

image-20231015152052498

对于我们是下个步骤安装nextCloud过程中需要开放一些端口,所以还需要配置安全组规则

选择更改安全组,选择自己认为合适的安全组或者新建安全组规则

image-20231015152240906

image-20231015152332097

1.1.3 远程登录云耀服务器L实例

每个人的喜好不太一样,常用的shell登录终端有很多,这里我使用的是MobaXterm

MobaXterm是一款强大的终端工具,它集成了SSH客户端、X服务器和Unix命令集工具箱。在Windows操作系统下,MobaXterm可以帮助用户轻松地连接并操作Linux服务器。

MobaXterm具有以下特点:

  1. 集成了SSH客户端:MobaXterm通过内嵌SSH客户端,可以快速建立与Linux服务器的安全连接,实现远程登录和管理。
  2. 支持X服务器:MobaXterm集成了X服务器,可以在Windows上运行Unix/Linux环境,并支持图形界面应用程序。
  3. 提供Unix命令集:MobaXterm集成了Unix命令集(GNU/Cygwin),用户可以在Windows上运行大多数Linux命令,实现高效的终端操作。
  4. 多终端视窗:MobaXterm支持开启多个终端视窗,可以同时连接多个Linux服务器,并进行灵活的终端管理。
  5. 可扩展性强:MobaXterm可以通过集成插件来扩展功能,例如运行Gcc、Perl、Curl、Tcl/Tk/Expect等程序。
  6. 免费开源:MobaXterm分为免费开源版和收费专业版,用户可以免费使用开源版,并根据需求选择专业版以获得更多的功能和更好的技术支持。

新建ssh登录,填写云耀服务器L实例的ip和用户名并输入密码

image-20231015152615972

登录成功

image-20231015152717521

2. 云耀服务器L实例中间件部署

2.1 安装配置环境

2.1.1 安装基本工具

安装yum额外源、wget、unzip、gcc等基本工具

yum -y install epel-release wget unzip gcc
yum -y install libsmbclient libsmbclient-devel redis

image-20231015152954960

关闭SELinux,可先通过sestatus -v命令查看SELinux是否开启

/usr/sbin/sestatus -v

修改/etc/selinux/config,将’SELINUX=enforcing’改为’SELINUX=disabled’,重启系统即可生效,或者本次可以使用’setenforce 0’临时关闭。

image-20231015153012575

2.1.2 安装MariaDB

通过yum安装MariaDB

yum -y install mariadb mariadb-server

image-20231015154947135

开启、启动服务,运行管理工具

systemctl enable mariadb.service
systemctl start mariadb.service
mysql_secure_installation

mysql_secure_installation的输入如下,牢记自己的数据库root密码

S[root@hcss-ecs-51c9 ~]# mysql_secure_installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password:                                                                                                           YES)
Enter current password for root (enter for none):
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n] Y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] Y
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] Y
 ... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] Y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] Y
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

登录到mysql shell为Nextcloud创建用户和数据库。

mysql -u root -p

image-20231015155140919验证root密码后,在mysql shell执行

create database nextcloud_db;
create user nextclouduser@localhost identified by 'nextclouduser@';
grant all privileges on nextcloud_db.* to nextclouduser@localhost identified by 'nextclouduser@';
flush privileges;
exit

image-20231015155833935

这样就创建了一个nextcloud_db数据库和nextclouduser用户,用户密码为’nextclouduser@’。

2.1.3 安装Nginx

通过yum安装Nginx

yum -y install nginx
mkdir /var/www
chown -R nginx:nginx /var/www

image-20231015160031312

开启、启动Nginx服务

systemctl enable nginx.service
systemctl start nginx.service

image-20231015160049810

使用nginx -s reload可以重载配置而不需要重启nginx

开放防火墙HTTP、HTTPS端口

firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
systemctl restart firewalld

image-20231015160152857

2.1.4 安装PHP

添加PHP7-FPM webtatic仓库,安装php7主体以及nextcloud需要的一些模块。

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum -y install php71w-fpm php71w-cli php71w-gd php71w-mcrypt php71w-mysql php71w-pear php71w-xml php71w-mbstring php71w-pdo php71w-json php71w-opcache php71w-pecl-apcu php71w-pecl-apcu-devel php71w-pecl-igbinary php71w-pecl-igbinary-devel php71w-pecl-imagick php71w-pecl-imagick-devel php71w-pecl-redis php71w-pecl-redis-devel
vi /etc/php-fpm.d/www.conf

编辑/etc/php-fpm.d/www.conf

;修改user和group这两行,大概在8行左右
user = nginx
group = nginx;取消这几行的注释,大概在第370行左右
env[HOSTNAME] = $HOSTNAME
env[PATH] = /usr/local/bin:/usr/bin:/bin
env[TMP] = /tmp
env[TMPDIR] = /tmp
env[TEMP] = /tmp

建立相关目录,修改相关目录权限

mkdir -p /var/lib/php/session 
chown -R nginx:nginx /var/lib/php/session/
vi /etc/php.d/opcache.ini

image-20231015161628360

修改/etc/php.d/opcache.ini,将以下行注释去掉,并修改为对应的配置值

zend_extension=opcache.so
opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.revalidate_freq=1
opcache.save_comments=1

安装smbclient扩展模块

yum -y install libsmbclient libsmbclient-devel
pecl install smbclient
vi /etc/php.d/smbclient.ini

新建/etc/php.d/smbclient.ini,添加如下内容

extension=smbclient.so

image-20231015161923181

开启、启动php-fpm服务

systemctl enable php-fpm.service
systemctl start php-fpm.service

image-20231015161945416

3. 安装Nextcloud

3.1 下载并解压到www目录

wget https://download.nextcloud.com/server/releases/nextcloud-12.0.2.zip
unzip nextcloud-12.0.2.zip
mv nextcloud /var/www/
chown -R nginx:nginx /var/www

image-20231015162021468

image-20231015164252164

3.2 生成SSL证书

mkdir -p /etc/nginx/cert/
openssl req -new -x509 -days 365 -nodes -out /etc/nginx/cert/nextcloud.crt -keyout /etc/nginx/cert/nextcloud.key
chmod 700 /etc/nginx/cert
chmod 600 /etc/nginx/cert/*

image-20231015164409508

3.3 在Nginx配置

修改nginx服务配置文件/etc/nginx/nginx.conf为以下内容,将“yourname.domain”替换为自己的域名,修改client_max_body_size可以设置最大可上传的文件大小

让Nginx重新载入配置

nginx -s reload

3.4 初始化

使用域名或者IP访问,就会出现初始设置页面,在这里设置Nextcloud管理员用户名和密码,然后选择使用的数据库为MySQL/MariaDB,填入之前设置数据库时的用户名(nextclouduser)、密码(nextclouduser@)、数据库名称(nextcloud_db),然后确认进行初始化后就可以使用了。

3.5 添加信任域名

Nextcloud本身的安全机制,会检查访问的域名,如果没有配置在信任域名中,会提示正在通过不信任的域名访问。

Nextcloud初始化完毕后,会生成“/var/www/nextcloud/config/config.php”配置文件,里面的’trusted_domains’配置项为信任域名,初始化完毕后只有一项,为主机的IP地址。可以修改该配置项,添加绑定的域名

'trusted_domains' => 
array (0 => '120.46.35.208',1 => 'yourname.domain',
),

3.6 开启内存缓存

开启内存缓存,可以提升响应速度。之前我们已经通过yum安装了redis服务,通过pecl安装了php的apcu、redis组件,下面先把redis设置为系统服务,再修改Nextcloud的配置。

安装、配置redis服务,设置服务自启、启动服务

yum -y install redis
systemctl enable redis
systemctl start redis

image-20231015164508750

修改/var/www/nextcloud/config/config.php文件,在配置加入

'memcache.local' => '\OC\Memcache\APCu',
'memcache.locking' => '\OC\Memcache\Redis',
'redis' => array('host' => 'localhost','port' => 6379,),

让Nginx重新载入配置

nginx -s reload

4. NextCloud初始化

4.1 NextCloud后台配置

设置用户名和密码,点击安装,等待安装完成

image-20231015170212709

可以看到已经安装完成

image-20231015170426755

可以在仪表盘配置我们需要的功能

  1. 在管理页面右上角,点击“A”图标,会出现功能菜单。
  2. 在功能菜单中,可以找到个人设置和管理等选项,可以对NextCloud服务进行各种设置。
  3. 在个人设置中,可以编辑自己的信息,而在管理中,则可以对NextCloud服务的各种选项进行设置,比如安全性、文件同步、应用程序等。
  4. 在管理中,可以对用户进行管理,新建或者删除用户,为用户分配不同的权限,也可以对群组进行管理,新建或者删除群组,将用户加入到不同的群组中。
  5. 在特定的设置中,可以对NextCloud的界面、备份、日志等进行个性化的定制。

image-20231015170618452

至此,云耀服务器L实例部署Nextcloud私有云配置完成

5. 总结

本文介绍了如何部署华为云云耀服务器L实例,包括购买、初始化配置和远程登录。接着介绍了安装配置环境,包括基本工具、MariaDB、Nginx和PHP。之后讲解了下载并解压到www目录、生成SSL证书、在Nginx配置、初始化、添加信任域名和开启内存缓存等步骤。最后介绍了NextCloud后台配置,包括个人设置和管理,可以对NextCloud服务进行各种设置,包括安全性、文件同步、应用程序等。同时可以进行用户和群组管理,对NextCloud的界面、备份、日志等进行个性化定制。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1095031.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网络通信协议-HTTP、WebSocket、MQTT的比较与应用

在今天的数字化世界中,各种通信协议起着关键的作用,以确保信息的传递和交换。HTTP、WebSocket 和 MQTT 是三种常用的网络通信协议,它们各自适用于不同的应用场景。本文将比较这三种协议,并探讨它们的主要应用领域。 HTTP&#xff…

【VSCode】Windows环境下,VSCode 搭建 cmake 编译环境(通过配置文件配置)

除了之前的使用 VSCode 插件来编译工程外,我们也可以使用配置文件来编译cmake工程,主要依赖 launch.json 和 tasks.json 文件。 目录 一、下载编译器 1、下载 Windows GCC 2、选择编译器路径 二、配置 debug 环境 1、配置 lauch.json 文件 2、配置…

FPGA project : flash_write

本实验重点学习了: flash的页编程指令pp。 在写之前要先进行擦除(全擦除和页擦除); 本实验:先传写指令,然后进入写锁存周期,然后传页编程指令,3个地址; 然后传数据&a…

分布式事务协调中间件---seata快速入门

分布式事务 Seata,之前叫做Fescar,是一个开源的分布式事务解决方案,它主要致力于提供高效和简单的分布式事务服务。Seata主要用于解决微服务架构下的数据一致性问题。 Seata 的基本原理是基于两阶段提交 (2PC) 以及三阶段提交 (3PC)&#xff…

Linux 学习的六个过程

Linux 上手难,学习曲线陡峭,所以它的学习过程更像一个爬坡模式。这些坡看起来都很陡,但是一旦爬上一阶,就会一马平川。 1、抛弃旧的思维习惯,熟练使用 Linux 命令行 在 Linux 中,无论我们做什么事情&…

快速排序、归并排序、基数排序

快速排序 算法思想 图 1-1 即确定一个基准值(一般为数组中间位置的元素,或者自定义),让待排序数组中所有比基准值小的元素放到基准值左边的位置,所有比基准值大的元素放到基准值右边的位置,这样一趟排序下…

Rxjava3 全新详解及常用操作符

简介 RxJava 是一个基于 Java 的响应式编程库,用于处理异步事件流和数据流。它是由 Netflix 开发并开源,现在广泛用于 Android 和 Java 后端开发。RxJava 提供了一种用于组合和处理异步数据的丰富工具集,它的核心思想是将数据流视为一系列事…

Hadoop3教程(十):MapReduce中的InputFormat

文章目录 (87)切片机制与MapTask并行度决定机制(90) 切片源码总结(91)FileInputFormat切片机制(92)TextInputFormat及其他实现类一览(93) CombineTextInputFo…

深入解析C语言中的strstr函数

目录 一,strstr函数简介 二,strstr函数实现原理 三,strstr函数的用法 四,strstr函数的注意事项 五,strstr函数的模拟实现 一,strstr函数简介 strstr函数是在一个字符串中查找另一个字符串的第一次出现&…

QT6集成CEF3--01 准备工作

QT6集成CEF3--01 准备工作 一、所有使用到的工具软件清单:二、准备工作三、cefclient示例程序四、特别注意 一、所有使用到的工具软件清单: CEF 二进制发行包 cef_binary_117.2.5gda4c36achromium-117.0.5938.152_windows64.tar.bz2 CMake 编译工具 cmake-3.22.6-windows-x86_…

实践笔记-docker安装及配置镜像源

docker安装及配置镜像源 1.卸载旧版本docker2. 安装yum工具3. 设置镜像仓库4.安装docker5. 启动docker服务6.docker镜像源配置 当前环境linux为centos7 1.卸载旧版本docker 如果以前安装过旧版本可以先执行卸载,下面的截图是没有安装过。 yum remove docker \ do…

DID赛道前列的生物识别技术,开启Web3时代的大门—MXT

互联网发展的十字路口 互联网从上世纪90年代初发展至今,历经30年,她改变了整个人类的生活方式、沟通形式以及社会发展模式,她的影响早已渗透到了世界的各个角落。而如今,我们似乎正站在一个新的十字路口,一个互联网将…

端口被谁占用如何解决?

## 如何查看端口被谁占用了?你好,我是Hasity 今天分享的内容是:Windows/Linux端口被占用如何解决? 问题出现 Description:Web server failed to start. Port 8082 was already in use.Action:Identify and stop the process thats listening on port 8…

mp4文件怎样提取mp3音频文件

Mp4视频文件怎样提取mp3等音频文件呢? 推荐一个免费网址,且不用任何注册,直接可以使用 https://audio-extractor.net/cn/ 上传视频,选择转换的音频格式, 更多格式,包括如下: 转换文件完成后…

【JavaEE】初识网络

网络初识 文章目录 网络初识网络发展史独立模式网络互连局域网LAN广域网 网络通信基础IP地址端口号格式 协议五元组协议分层OSI七层模型TCP/IP五(四)层协议1.物理层2.数据链路层3.网络层4.传输层5.应用程序 网络设备所在的分层封装和分用例子发送方接收方…

PyTorch入门教学——dir()函数和help()函数的应用

1、简介 已知PyTorch是一个工具包,其中包含许多功能函数。dir()函数和help()函数是学习PyTorch包的重要法宝。 dir():能让我们知道工具包以及工具包中的分隔区有什么东西。help():能让我们知道每个工具是如何使用的,即工具的使用…

Redis数据序列化器

Redis序列化 Redis 数据序列化器用于将数据在存储到 Redis 中时进行序列化(编码)和反序列化(解码)。 RedisTemplate的两种序列化实践方案: 方案一: 自定义RedisTemplate 修改RedisTemplate的序列化器为…

从一到无穷大 #18 时序数据库运营SLI思考

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。 公有云时序数据库SLA 运营商产品每服务周期服务可用率不低于99.9%衡量服务不可用数据指标从采…

SpringAOP是什么?为什么要有SpringAOP?

SpringAOP是什么?为什么要有SpringAOP? 原文:SpringAOP是什么?为什么要有SpringAOP? 一、有SpringAOP之前 简单的开发场景,只需要写简单的业务逻辑,比如CRUD 但是在执行具体的逻辑之前&…

【论文精读】NMP: End-to-end Interpretable Neural Motion Planner

toc 1 背景信息 团队:Uber,多伦大大学 年份:2019 论文链接:https://arxiv.org/abs/2101.06679 2 Motivation 深度学习方案受限于累积误差suffers from the compounding error,而且可解释性差interpretability is d…