华为云 Flexus 云服务器 X 实例部署 Trilium Notes 知识库工具

49 阅读11分钟

一、Flexus 云服务器 X 实例介绍

1.1 Flexus 云服务器 X 实例简介

·官网地址:华为云Flexus云服务器X实例

华为云 Flexus 云服务器 X 实例是新一代面向中小企业和开发者的柔性算力云服务器。它能够智能感知业务负载的变化,自动调整资源配置。这款服务器特别适用于中低负载的应用场景,例如电商直播、企业网站建设、开发测试环境、游戏服务器以及音视频服务等。X 实例的设计理念旨在为用户提供更加灵活和高效的计算资源管理方式。通过智能调整,它可以更好地满足不同业务的需求,提高资源利用率。

wKgZPGd2il6AFwhyAAEOFncth-U598.png

1.2 Flexus 云服务器 X 实例特点

·提供丰富的公共镜像:Flexus 云服务器 X 实例提供多种公共镜像供用户选择,方便快速部署各种应用和服务。

·可灵活自定义 vCPU 内存配比:用户可以根据自己的需要灵活调整虚拟 CPU 和内存的配比,以满足不同场景的需求。

·智能感知业务动态升降配:Flexus 云服务器 X 实例能够智能感知业务的负载情况,并根据需要自动升降配,以满足业务的需求,提高系统的稳定性和性能。

·负载范围更高:相对于 Flexus 应用服务器 L 实例,Flexus 云服务器 X 实例能够处理更高的负载,适用于更复杂和繁忙的场景。

1.3 Flexus 云服务器 X 实例使用场景

Flexus 云服务器 X 实例针对不同的使用场景展现出其独特的优势:

1.电商直播:利用 X 实例搭建电商交易平台,可以有效应对电商市场的瞬息万变,从容处理业务压力波动,确保交易过程顺畅无阻。

2.企业建站:面向博客、论坛和企业门户等应用场景,X 实例帮助企业高效传播价值信息,促进信息共享与交流,支持构建多功能传播和交互平台。

3.个人开发测试:开发者在开发和测试过程中所需的环境资源可以通过 X 实例便捷获取,不仅提高了搭建效率,而且降低了成本。

4.游戏服务器:适用于搭建游戏后台服务器,强大的计算能力可以轻松应对大量玩家同时在线的情况,同时支持平滑扩容,快速应对玩家数量增长的需求,以及提供出色的网络加速能力以提升用户体验。

二、Trilium Notes 介绍

2.1 Trilium Notes 简介

Trilium Notes是一款专为构建大型个人知识库而设计的分层笔记应用程序。它提供了一种灵活的方式来组织您的想法和信息,支持复杂的笔记结构,并且配备了多种强大的功能来增强您的笔记体验。

2.2 Trilium Notes 特点

·Trilium Notes 特点可参考如下表格:

2.3 Trilium Notes 使用场景

·学术研究:研究人员可以利用 Trilium Notes 组织文献和实验数据,构建详尽的研究知识库。

·项目管理:项目经理通过 Trilium Notes 创建项目结构,跟踪任务进度,确保项目按时完成。

·编程学习:开发者使用 Trilium Notes 存储代码片段和学习笔记,加速编程技能的掌握。

·旅行规划:旅行者借助 Trilium Notes 计划行程细节,记录旅行经历,打造个性化的旅行指南。

·个人财务管理:个人或家庭使用 Trilium Notes 管理收支记录,制定预算计划,实现财务目标。

·健康日记:用户通过 Trilium Notes 记录饮食和运动情况,监测健康指标,促进生活方式改善。

·教育资料整理:教师或学生运用 Trilium Notes 整理课程资料,准备考试复习,提升学习效率。

三、本次实践介绍

3.1 本次实践简介

1.本次实践为个人测试学习环境,旨在快速部署应用,生产环境请谨慎;2.本次实践环境为云华为云 Flexus 云服务器 X 实例,使用的操作系统为 Huawei Cloud EulerOS 2.0 (x86_64);3.本次实践在 Docker 环境下部署 Trilium Notes 知识库工具。

3.2 本次环境规划

四、远程连接华为云 Flexus 云服务器 X 实例

4.1 购买 Flexus 云服务器 X 实例

进入华为云官网:https://activity.huaweicloud.com/,登录自己的华为云账号,进入华为云首页。

wKgZO2d2il-ANg5fAAFr1Uxe4oM703.png

wKgZPGd2il-AX4ZKAAK0Slxmdc8704.png

·可参考以下基础配置,进行购买:

1.计费模式:包年/包月,这里选择此模式;2.区域:华北—北京四,可用区:随机即可;3.实例规格:关闭性能模式,选择自定义,4vCPUs | 12GiB;4.镜像:公共镜像,Huawei Cloud EulerOS,版本,Huawei Cloud EulerOS 2.0 Standard 64 bit(10GiB);5.应用加速:这里选择不加速;6.存储:系统盘,通用型 SSD100G;7.网络:选择默认即可;8.安全组:选择默认即可;9.弹性公网 IP:选择“现在购买”,全动态 BGP,带宽 3Mbit/s;10.云服务器名称:可自定义设置,这里选择默认的名称;11.登录凭证:自定义设置密码;12.云备份:暂不购买;其余配置默认即可。

·确认配置及购买

在确认配置页面,检查 Flexus 云服务器 X 实例的各项配置是否正确。检查完毕后,点击“立即购买”。付款完毕后,华为云 Flexus 云服务器 X 实例购买成功。

wKgZO2d2il-ASfy_AADFB34z-Ds377.png

4.2 查看 Flexus 云服务器 X 实例状态

进入华为云 Flexus 云服务的控制台,选择 Flexus 云服务器 X 实例,可以看到已经正在运行的 Flexus 云服务器 X 实例。

wKgZPGd2imCALT_zAAC7Zb76j9c848.png

4.3 使用 Xshell 远程连接

·复制 Flexus 云服务器 X 实例的弹性公网 IP 地址

wKgZO2d2imCAewfbAAC9MXdwFBc075.png

·主要填写 Flexus 云服务器 X 实例的弹性公网 IP 地址,输入其登录用户和密码,连接即可。

wKgZPGd2imCAbXTZAAGn86idkto563.png

wKgZO2d2imGALIDBAACpRi0H7go906.png

五、检查 Flexus 云服务器 X 实例系统环境

5.1 检查操作系统版本

检查 Flexus 云服务器 X 实例的操作系统版本,本次实践选择的版本为 Huawei Cloud EulerOS 2.0 (x86_64)

[root@flexusx-51a1 ~]# cat /etc/os-releaseNAME="Huawei Cloud EulerOS"VERSION="2.0 (x86_64)"ID="hce"VERSION_ID="2.0"PRETTY_NAME="Huawei Cloud EulerOS 2.0 (x86_64)"ANSI_COLOR="0;31"

5.2 检查内核版本

检查当前操作系统的内核版本,当前内核版本为 5.10.0-182.0.0.95.r1941_123.hce2.x86_64。

[root@flexusx-51a1 ~]# uname -r5.10.0-182.0.0.95.r1941_123.hce2.x86_64

5.3 检查 Docker 版本

部署该项目需要提前安装 Docker 环境,检查 Docker 版本,当前安装的 Docker 版本为27.1.1。

[root@flexusx-51a1 ~]# docker -vDocker version 27.1.1, build 6312585

5.4 检查 Docker 服务状态

检查 Docker 服务状态,确保 Docker 服务正常。

[root@flexusx-51a1 ~]# systemctl status docker●docker.service - Docker Application Container EngineLoaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)Active: active (running) since Mon 2024-09-02 14:01:54 CST; 6min agoTriggeredBy:●docker.socketDocs: docs.docker.comMain [PI](https://www.elecfa…: 328767 (dockerd)Tasks: 52Memory: 59.3MCGroup: /system.slice/docker.service├─328767 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

5.5 检查 Docker compose 版本

检查 docker compose 版本,当前默认安装版本为 v2.29.1。

[root@flexusx-51a1 ~]# docker compose versionDocker Compose version v2.29.1

六、部署 Trilium Notes 应用

6.1 拉取 Trilium Notes 镜像

执行以下命令,拉取 Trilium Notes 镜像。

[root@flexusx-51a1 ~]# docker pull nriver/trilium-cnUsing default tag: latestlatest: Pulling from nriver/trilium-cnc926b61bad3b: Already exists3ebae63ae1d8: Already exists4df6e7e40a3f: Already existsbd5b864d1249: Already exists289f2b695bb4: Pull complete4f4fb700ef54: Pull completee78c2afbce21: Pull completeDigest: sha256:ca85b660b0c50b9b7d5b74a16599a5a2851c976b369f2b22c82d756f11b07e2aStatus: Downloaded newer image for nriver/trilium-cn:latestdocker.io/nriver/trilium-cn:latest

wKgZPGd2imGAdR06AABHqEOi-cw933.png

6.2 创建部署目录

我们执行以下命令,创建一个部署目录/data/trilium/。

mkdir -p /data/trilium/data && cd /data/trilium/

6.3 编辑 docker-compose.yaml 文件

如果想要使用 docker-cli 方式部署应用,可参考以下命令。

docker run -d --name trilium-cn -v /data/trilium/data:/root/trilium-data -e TRILIUM_DATA_DIR=/root/trilium-data -p 8080:8080 nriver/trilium-cn

本次实践使用 docker compose 方式部署 Trilium Notes,编辑 docker-compose.yaml 文件,可自行修改映射端口部分。

vim docker-compose.yaml

services:trilium-cn:image: nriver/trilium-cncontainer_name: trilium-cnrestart: alwaysports:- "8680:8080"volumes:- /data/trilium/data:/root/trilium-dataenvironment:# 环境变量表示容器内笔记数据的存储路径- TRILIUM_DATA_DIR=/root/trilium-data

6.4 创建 Trilium Notes 容器

执行以下命令,使用 docker-compose.yaml 文件创建 Trilium Notes 服务。

[root@flexusx-51a1 trilium]# docker compose up -d[+] Running 2/2✔Network trilium_default Created 0.0s✔Container trilium-cn Started 0.1s

wKgZO2d2imKAMo-qAABglgQNV3A973.png

6.5 检查 Trilium Notes 容器状态

检查 Trilium Notes 容器状态,确保 Trilium Notes 容器正常启动。

[root@flexusx-51a1 trilium]# docker compose psNAME IMAGE COMMAND SERVICE CREATED STATUS PORTStrilium-cn nriver/trilium-cn "docker-entrypoint.s…" trilium-cn 50 seconds ago Up 50 seconds 0.0.0.0:8680->8080/tcp, :::8680->8080/tcp

6.6 检查 Trilium Notes 容器日志

检查 Trilium Notes 容器运行日志,确保 Trilium Notes 服务正常运行。

[root@flexusx-51a1 trilium]# docker compose logstrilium-cn | Generated session secrettrilium-cn | DB not initialized, please visit setup page - http://[your-server-host]:8080 to see instructions on how to initialize Trilium.trilium-cn | DB size: 4 KBtrilium-cn | {trilium-cn | "appVersion": "0.63.7",trilium-cn | "dbVersion": 228,trilium-cn | "nodeVersion": "v18.18.2",trilium-cn | "syncVersion": 32,trilium-cn | "buildDate": "2024-05-30T06:59:06+02:00",trilium-cn | "buildRevision": "95d46b7ce7e0036eeb72b43e1815cc5c00dc214c",trilium-cn | "dataDirectory": "/root/trilium-data",trilium-cn | "clipperProtocolVersion": "1.0",trilium-cn | "utcDateTime": "2024-09-03T04:25:45.024Z"trilium-cn | }trilium-cn | CPU model: General Purpose Processor, logical cores: 4 freq: 2799 Mhztrilium-cn | Trusted reverse proxy: falsetrilium-cn | App HTTP server starting up at port 8080trilium-cn | Listening on port 8080

wKgZPGd2imKAaIR9AAFD_kiRwmQ742.png

七、访问前准备工作

7.1 关闭 selinux 和防火墙

·关闭 selinux

setenforce 0sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

·停止防火墙

systemctl stop firewalldsystemctl disable firewalld

7.2 Flexus 云服务器 X 实例安全组配置

进入 Flexus 云服务器 X 实例控制台,进行安全组规则配置。

wKgZO2d2imOAKXZHAADu7FSoENc863.png

入方向上放行 8680 端口,确认配置即可。

wKgZPGd2imOAG6SNAAEUMNGj_Zc435.png

八、访问 Trilium Notes 服务

8.1 访问 Trilium Notes 初始页

浏览器访问地址:http://弹性公网 IP 地址:8680,将 IP 替换为自己华为云 Flexus 云服务器 X 实例的弹性公网 IP 地址。浏览器打开访问地址后,进入 Trilium Notes 初始页。

wKgZO2d2imSAZGwjAAB6Jqfvukk265.png

8.2 设置访问密码

选择第一项的新用户场景,点击“下一个”选项。

wKgZPGd2imSAXaQHAACW7fqQlmo278.png

设置访问密码,自定义填写即可。

wKgZO2d2imSAOMGRAABjDWbBI9g320.png

8.3 访问 Trilium Notes 首页

输入刚才设置的访问密码,即可访问 Trilium Notes 首页。

wKgZPGd2imWANVWMAAA-yf_01XQ421.png

wKgZO2d2imWAPXTCAAFsdYan_IQ406.png

九、Trilium Notes 基本使用

9.1 创建笔记

本次部署的 Trilium Notes 为中文版本,系统默认在左侧的笔记树中创建了很多笔记。我们直接点击根笔记旁的“+”,创建笔记名称为 Linux。

wKgZPGd2imWAOL4fAACwvKuomhM959.png

修改刚才新建的笔记名称,这里修改为 Linux。

wKgZO2d2imaAGPHlAACpqw4C8PE956.png

9.2 编辑笔记内容

在左侧的笔记树中,我们继续在 Linux 下新建子笔记。

wKgZPGd2imaAY1AqAACOWcX_mis523.png

编辑笔记名称和笔记内容,可以看到如下效果:

wKgZO2d2imeAdNNJAAHYIBXgW9Y672.png

十、使用体验与总结

在本次实践中,我们借助华为云 Flexus 云服务器 X 实例成功地部署了 Trilium Notes 应用,这一过程非常顺利。华为云 Flexus X 实例以其卓越的性价比、强大的计算性能、可靠的稳定性和高标准的安全保障脱颖而出。我们始终享受到稳定的网络连接,操作过程毫无延迟或卡顿,确保了高效的用户体验。华为云 Flexus 云服务器 X 实例与 Trilium Notes 知识库的结合不仅极大地提升了工作效率,还可以帮助我们构建了一个专属的技术体系。华为云 Flexus 云服务器 X 实例是一款优秀的云服务产品,给我们带来了非常出色的体验。