• 华为云云耀云服务器L实例评测|部署私有网盘 Nextcloud


    一、云耀云服务器L实例介绍

    1.1 云服务器介绍

    云服务器的重要意义主要体现在灵活性、弹性和成本效益。它们提供了根据需求即时调整计算资源的能力,节省了长期硬件采购和维护的成本,同时保障业务的稳定运行。通过云服务器,企业可以更高效地部署、扩展和管理应用程序,适应快速变化的市场需求,推动数字化转型,加速业务创新。

    华为云焕新推出华为云云服务器实例新品,华为云云服务器具有智能不卡顿、价优随心用、上手更简单、管理特省心这四个优点,从而帮您快速上云!

    在这里插入图片描述

    从8月底到10月中旬,参与华为云云服务器开启评测活动,可以获得54.99元的优惠券,购买 华为云云耀云服务器L实例 轻量服务器一个月仅需支付0.03元。

    在这里插入图片描述
    还有 限时秒杀专区华为云云耀云服务器L实例 每日限量抢购,优惠仅限1单,抢完即止!

    在这里插入图片描述

    1.2 产品规格

    选择华为云云耀云服务器L实例配置时,一般会标注几个关键的硬件参数如下

    云服务器配置说明
    vCPU2核表示分配给虚拟机的虚拟中央处理器数量,影响服务器可以处理的并发任务数和性能。
    内存2GB表示服务器分配的随机存取内存大小,影响服务器同时运行的应用程序的数量和性能。
    系统盘40GB表示分配给服务器的硬盘空间大小,用于存储操作系统、应用程序和数据文件。
    流量包400GB表示服务器允许的网络传输数据量,通常以每月为单位,影响服务器与外部通信的数据量。
    峰值带宽3Mbit/s表示服务器的最大网络传输速度,通常以每秒传输的数据量为单位,影响服务器在网络通信时的传输速率。

    目前暂不支持直接更换套餐升级CPU、内存规格。您可以通过如下两种升级CPU、内存规格。

    • 退订当前套餐,重新购买想要的规格套餐
    • 参考升级云耀云服务器L实例规格升级CPU、内存规格。但是通过这种方式升级规格后,您的业务将切换到弹性云服务器而非云耀云服务器L实例。

    1.3 应用场景

    云耀云服务器L实例适用于支撑小型网站、Web应用、博客、论坛、云端开发环境等轻量级、低负载且访问量适中的应用场景。

    • 电商店铺管理:快速搭建外贸独立站、店铺管理环境,为海内外顾客提供稳定、优质的服务。
    • 企业建站:提供常用建站类应用模板,快速构建满足业务诉求的网站,如企业官网、资讯、博客、论坛、电商等。
    • 小程序后台:适合于构建微信小程序以及公众号后台服务,降低维护成本,让用户专注于业务开发。
    • 小游戏:帮助客户搭建PC单机游戏、休闲小游戏等,快速上线,性能稳定。
    • 开发测试:适合云端构建即开即用的远程开发、测试项目,运行定时任务、自动任务等。
    • 云端学习:帮助学生、开发者在云端做一些实验、论文等。
    • 搭建博客/论坛:方便个人开发者搭建博客、论坛,性价比高。

    二、云耀云服务器L实例配置

    2.1 重置密码

    购买完成后,会短信通过你的云服务器信息,重点是公网IP地址和用户名。首先我们需要打开你的服务器控制台,完成重置密码
    在这里插入图片描述
    勾选自动重启,点击确定即可。
    在这里插入图片描述

    2.2 服务器连接

    • 方式一:使用控制台提供的VNC方式登录

    • 方式二:使用Putty、Xshell等工具登录Linux弹性云服务器,
      a) 下载安装登录工具,例如Putty。
      b) 输入弹性公网IP。
      c) 输入用户名:root、密码,单击“确定”。

    • 方式三:使用Linux/Mac OS系统主机登录Linux弹性云服务器。
      a) 执行连接命令。
      ssh 弹性公网IP
      例如:ssh 123.xxx.xxx.456
      b) 输入用户名:root、密码,登录服务器。

    我个人习惯使用 MobaXterm 这款软件,添加SSH连接,输出公网IP、用户名和端口(默认22),连接即可。

    在这里插入图片描述

    2.3 安全组配置

    安全组是一个逻辑上的分组,为同一个VPC内的云服务器提供访问策略。用户可以在安全组中定义各种访问规则,当云服务器加入该安全组后,即受到这些访问规则的保护。

    系统为每个网卡默认创建一个默认安全组,默认安全组的规则是对出方向上的数据报文全部放行,入方向访问受限。您可以使用默认安全组,也可以根据需要创建自定义的安全组。
    在这里插入图片描述
    主要需要填写优先级(默认填1即可)、协议端口信息(一般选择你项目需要暴露的端口即可),其他默认点击确定即可。安全组配置主要是暴露端口可以给外网访问。
    在这里插入图片描述
    如果还不清楚可以参考文档:安全组配置示例

    三、部署 Nextcloud

    3.1 Nextcloud 介绍

    Nextcloud 是一个用于个人、团队或组织的云存储和协作平台。它允许用户在自己的服务器上存储数据,并提供了类似于文件同步、共享、日历、联系人和更多功能的应用程序,使用户可以轻松访问和管理其数据。

    一些Nextcloud的特色功能包括端到端加密、强大的搜索功能、自定义外观和主题、文件恢复、自动照片标签、Office文档在线编辑等。

    功能点

    • 文件同步和共享: 用户可以上传、下载和共享文件,甚至是大型文件夹,从任何设备访问。
    • 日历和联系人: 集成了日历和联系人应用,方便管理个人和团队日程和联系人信息。
    • 文件版本控制: 可以查看和还原文件的不同版本,以防止数据丢失。
    • 安全性: 提供加密传输和服务器端加密选项,以确保数据的安全性和隐私。
    • 扩展性: 可以通过插件和应用程序扩展Nextcloud的功能,以满足特定需求。
    • 协作工具: 包括文档编辑、聊天和视频会议等协作工具。
    • 用户和权限管理: 支持多用户环境,并允许管理员管理用户和权限。

    在这里插入图片描述

    Nextcloud 服务器作为所有数据的安全之家,将文件、联系人、日历等存储在服务器上,可以随时随地访问数据,并且支持设备之间保持文件、联系人、日历等内容的同步,还可以共享数据,与他人协同合作创作作的内容。功能集成十分强大,个人主要当作网盘使用,体验不错。

    • 官网:https://nextcloud.com/
    • Github:https://github.com/nextcloud/docker

    3.2 Docker 环境搭建

    本次服务器环境是ubuntu系统镜像,需要自己安装docker环境

    服务器类别系统镜像内网IP地址Docker版本操作系统版本
    云耀云服务器L实例Ubuntu192.168.0.16820.10.24Ubuntu 22.04.1 LTS

    使用snap命令安装docker

    root@hcss-ecs-f632:~# snap install docker
    docker 20.10.24 from Canonical✓ installed
    
    • 1
    • 2

    测试docker安装是否成功

    root@hcss-ecs-f632:~# docker -v
    Docker version 20.10.24, build 297e128
    
    • 1
    • 2

    检查docker服务状态

    root@hcss-ecs-f632:~# systemctl status docker
    ● docker.service - Docker Application Container Engine
         Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
         Active: active (running) since Thu 2023-09-14 14:25:21 CST; 2 days ago
    TriggeredBy: ● docker.socket
           Docs: https://docs.docker.com
       Main PID: 30672 (dockerd)
          Tasks: 73
         Memory: 137.0M
            CPU: 2min 37.906s
         CGroup: /system.slice/docker.service
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    检查docker compose版本

    root@hcss-ecs-f632:~# docker compose version
    Docker Compose version v2.17.2
    
    • 1
    • 2

    3.3 Nextcloud 部署

    • 创建docker-compose配置文件

    从 docker hub 拉取 Nextcloud 镜像,地址:https://hub.docker.com/_/nextcloud/

    使用docker-compose方式启动,先创建文件docker-compose.yml

    • volumes:映射容器内部文件路径到本地
    • ports:配置访问端口
    • links:连接数据库
    version: '3'
    services:
      postgresql:
        image: postgres:latest
        container_name: postgresql
        ports:
          - 5432:5432
        volumes:
          - "./postdata:/var/lib/postgresql/data"
        environment:
          - POSTGRES_PASSWORD=123456
      nextcloud:
        image: nextcloud:latest
        container_name: nextcloud
        ports:
          - 2020:80
        links:
          - "postgresql:postgresqldbsss"
        volumes:
          - ./nextcloud:/var/www/html
        restart: unless-stopped
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 配置安全组

    在华为云云耀云服务器L实例的安全组管理页面,添加入方向规则,接下来我们启动服务需要监听nextcloud 的2020 端口和 postgres 的5432端口,所以添加安全组为TCP:2020TCP:5432协议端口。

    在这里插入图片描述

    • 启动服务

    如果将上述代码片段保存在名为 docker-compose.yml 的文件中,则只需从同一文件夹中运行 docker compose up -d 即可自动拉取 nextcloud 和 postgres 映像,并创建并启动一个容器。

    up 表示启动服务,-d 表示在后台执行。docker-compose down 命令用于停止和清理由 docker-compose up 启动的服务。

    root@hcss-ecs-f632:~/nextcloud# docker-compose up -d
    Creating network "nextcloud_default" with the default driver
    Pulling postgresql (postgres:latest)...
    latest: Pulling from library/postgres
    a803e7c4b030: Pull complete
    009c876521a0: Pull complete
    9c412905cca2: Pull complete
    6463d4bf467a: Pull complete
    bd8b983728ed: Pull complete
    febc167f3560: Pull complete
    d73c81c4ade3: Pull complete
    34b3b0ac6e9e: Pull complete
    9bd86d074f4e: Pull complete
    406f63329750: Pull complete
    ec40772694b7: Pull complete
    7d3dfa1637e9: Pull complete
    e217ca41159f: Pull complete
    Digest: sha256:f1aaf6f8be5552bef66c5580efbd2942c37d7277cd0416ef4939fa34bf0baf31
    Status: Downloaded newer image for postgres:latest
    Pulling nextcloud (nextcloud:latest)...
    latest: Pulling from library/nextcloud
    a803e7c4b030: Already exists
    84313b8f4350: Pull complete
    94f42c54df3f: Pull complete
    fac86b32c028: Pull complete
    e326747c51cb: Pull complete
    2241eb3f28be: Pull complete
    82dc7266c2a7: Pull complete
    282af1cdfe15: Pull complete
    08e95c38e747: Pull complete
    941f762c484e: Pull complete
    6d95ce521328: Pull complete
    367da9bc7f8d: Pull complete
    5acf0f9857c5: Pull complete
    bcda641072aa: Pull complete
    f8c950732dc5: Pull complete
    b6c468f2924e: Pull complete
    8b3b13543515: Pull complete
    5c1e11a5e203: Pull complete
    97bdfb7caa02: Pull complete
    9786047c7de7: Pull complete
    927b11087c9c: Pull complete
    Digest: sha256:c052970f60fc0a2fec08b1777fd40322cf6b680bb1d03e11c0e40bb960ea1536
    Status: Downloaded newer image for nextcloud:latest
    Creating postgresql ... done
    Creating nextcloud  ... done
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 检查容器状态

    检查 nextcloudpostgres 容器状态,确保容器正常启动

    root@hcss-ecs-f632:~/nextcloud# docker ps
    CONTAINER ID   IMAGE                                    COMMAND                  CREATED         STATUS                PORTS                                                 NAMES
    bc930714d71a   nextcloud:latest                         "/entrypoint.sh apac…"   7 seconds ago   Up 7 seconds          0.0.0.0:2020->80/tcp, :::2020->80/tcp                 nextcloud
    e7d85d23fc23   postgres:latest                          "docker-entrypoint.s…"   8 seconds ago   Up 7 seconds          0.0.0.0:5432->5432/tcp, :::5432->5432/tcp             postgresql
    
    • 1
    • 2
    • 3
    • 4
    • 访问地址

    内网:http://localhost:80
    外网:http://公网IP:2020

    • 访问结果

    在这里插入图片描述

    若出现此页面,则部署 Nextcloud server 成功。

    3.4 Nextcloud 使用

    创建管理员账户:输入用户名和密码,在存储与数据库中配置数据库选PostgreSQL,数据库用户postgres,数据库密码123456,数据库名postgres,数据库主机postgresqldbsss

    在这里插入图片描述

    点击安装,稍等片刻,完成安装,进入推荐的应用,点击跳过即可

    在这里插入图片描述

    首次进入展示关于页面

    在这里插入图片描述

    关闭窗口进入仪表盘,主界面顶部导航栏:仪表盘、文件、照片、动态、搜索、通知、联系人、用户设置等菜单

    在这里插入图片描述

    切换到文件:会显示网盘文件信息,全部文件、最近、收藏、共享、标签等,可以查看网盘文件的占用情况、已删除文件

    在这里插入图片描述

    可以上传文件、新建文件夹、新建文本等操作

    在这里插入图片描述

    支持在线预览PDF文件

    在这里插入图片描述

    切换到图片:会显示图片信息,显示所有媒体、照片、视频、专辑、时间等分类,可以添加标签等设置

    在这里插入图片描述

    支持在线预览图片与视频

    在这里插入图片描述

    切换到动态:会显示最近的一些操作记录

    在这里插入图片描述

    支持文件搜索功能

    在这里插入图片描述

    支持系统通知:应用推荐、个人信息资料修改提示

    在这里插入图片描述

    应用扩展:支持启用或禁用应用,已经扩展更多应用,目前我的部署不能显示更多的应用列表,也无法安装扩展应用了

    文档说明:您的 Nextcloud 服务器需要能够与之通信以列出和下载应用程序。如有必要,请确保在防火墙或代理中将此目标列入白名单。https://apps.nextcloud.com

    在这里插入图片描述

    使用APP商店国内镜像
    github链接加速代理的镜像:https://www.orcy.net/ncapps/v2/,v2镜像使用加速代理了官方的github地址。如安装应用出现缓慢、网络超时的报错,或者服务器访问github网络不稳定,建议使用v2版加速github下载。
    config.php添加如下两行
    'appstoreenabled' => true,
    'appstoreurl' => 'https://www.orcy.net/ncapps/v2/',
    回到应用页面刷新一下,应用商店已经显示正常

    在这里插入图片描述

    Nextcloud 离线安装应用方法
    1.打开 Nextcloud 的官方应用商店网站(https://apps.nextcloud.com/)
    2.在应用商店网站上搜索你想要离线安装的应用,并找到该应用的下载链接
    3.下载应用的 ZIP 文件并将其保存在本地计算机上。
    4.将ZIP 文件上传到 Nexicoud 实例的应用目录中。应用目录的默认位置是 /var/www/nextcoud/apps/,但是具体位置可能因安装方式而异。
    5.解压缩 ZIP 文件并将其重命名为应用的名称
    6.在 Nextcloud 管理员界面中启用该应用。在“应用”页面中,找到该应用并点击“启用”按钮。
    7.离线安装应用完成。请注意,离线安装应用可能会导致应用不受支持或无法更新。如果可能的话,建议使用 Nexicloud 应用商店中的自动安装程序

    基于 Nextcloud 强大的应用市场可以扩展和集成超多实用的功能,比如日历、笔记、看板、任务等,当然还有很多有趣的应用还没有尝试

    在这里插入图片描述

    查看 Nextcloud 映射文件目录

    root@hcss-ecs-f632:~/nextcloud# ls
    docker-compose.yml  nextcloud  postdata
    
    • 1
    • 2
    • nextcloud:网盘数据的存储路径
    • postdata:数据库的存储路径

    这里我们看一下网盘展示文件信息的实际的存储路径

    root@hcss-ecs-f632:~/nextcloud/nextcloud/data/maxx/files# ls
     Documents  'Nextcloud intro.mp4'  'Nextcloud Manual.pdf'   Nextcloud.png   Photos   Readme.md  'Reasons to use Nextcloud.pdf'  'Templates credits.md'   模板
    
    • 1
    • 2

    Nextcloud 作为网盘可以同步相册,保存和分享文件,可以替代一些收费的网盘存储产品,使用体验还是不错的,并且数据完全属于自己,不会出现网盘的文件会突然消失,一些文档的内容会检索敏感词被封禁等情况,以上所有的功能都是免费的,无广告,不需要验证手机号和其他信息,个人和家庭使用还是很适合的,其他更多功能就需要自行探索了。

    四、总结

    云耀云服务器L实例是新一代开箱即用、面向中小企业和开发者打造的全新轻量应用云服务器。云耀云服务器L实例提供丰富严选的应用镜像,实现应用一键部署,助力客户便捷高效的在云端构建电商网站、Web应用、小程序、学习环境、各类开发测试等。

    而且云耀云服务器L实例使用门槛较低,如果您是正在了解云计算服务的入门用户,或是需要在服务器中部署简单应用的个人开发者、中小企业,比如部署一些轻量级的有趣的项目,那么推荐您选择云耀云服务器L实例

    NextCloud 可以理解为一个简易版本的 NAS,最核心的功能莫过于文件、相册和视频的备份,以及基于数据的功能,如文件分享、办公套件等。普通使用很流畅,个人体验比较不错,看有些评价说它的性能有一些问题,如上传文件速度10M/s,卡顿等问题,目前还没有大规模使用,未出现此类情况。

  • 相关阅读:
    C++ final和override的作用,以及使用场合
    想了解软件测试生命周期知识吗?
    Android 12 WiFi Scan 流程 [3]
    移动端安全区域适配方案
    控制反转 IOC 理论推导
    mysql索引覆盖之innodb和myisam效率问题
    虚拟环境创建、配置及激活
    Linux管理多版本node.js
    家校协同小程序实战教程
    JAVA实现数学函数图像
  • 原文地址:https://blog.csdn.net/weixin_44008788/article/details/133583394