828华为云征文 | 华为云Flexusx实例,高效部署Servas书签管理工具的优选平台

本文主要是介绍828华为云征文 | 华为云Flexusx实例,高效部署Servas书签管理工具的优选平台,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

需要了解

  • 本文章主要讲述在 华为云Flexus X 实例上使用docker快速部署Servas,一款功能强大的自托管书签管理工具,专为追求高效与个性化的用户设计。
  • 选择合适的云服务器: 本文采用的是 华为云服务器 Flexus X 实例(推荐使用)
  • 连接方式: 本文通过本地shell 方式,通过弹性IP 远程连接至服务器,进行部署搭建
  • 操作系统版本: Huawei Cloud EulerOS 2.0
  • Docekr版本: Docker v27.1.1
  • Docekr-compose版本: Docker Compose v2.29.1
  • 服务器购买链接:华为云服务器 Flexus X 实例
  • Docekr安装可参考文章: 华为FlexusX与Docker+Nginx的高效整合之路
  • 详细购买配置实例可参考文章: 快速部署华为云Flexus X实例,开启您的云端之旅

Servas简介

Servas是一款功能强大的自托管书签管理工具,专为追求高效与个性化的用户设计。它允许用户轻松整理、分类并搜索自己的书签,无论是工作资料、学习笔记还是日常兴趣链接,都能迅速找到。

开源项目地址:https://github.com/beromir/Servas

在这里插入图片描述

Servas特点

数据安全与隐私保护:通过自托管模式,用户完全掌控自己的数据和隐私,确保信息安全无虞,避免第三方服务带来的潜在风险。

高效书签管理功能:提供分类、标签、搜索及快速访问等强大功能,帮助用户轻松整理、查找和访问书签,极大提升管理效率。

多用户支持与资源共享:支持多用户账户,促进团队协作与家庭资源共享,实现信息的无缝流通与高效利用。

高度可定制性与扩展性:满足用户多样化的需求,允许用户添加插件或开发新功能,实现个性化定制与功能扩展。

跨设备响应式设计:采用响应式设计,确保在各种设备上都能提供流畅的用户体验,让用户随时随地都能方便地访问和管理书签。

Servas使用场景

个性化书签管理:适合个人用户高效地整理和查找各类书签,包括工作、学习、兴趣等。

团队协作与共享:支持多用户账户,方便团队成员共享书签资源,提升协作效率。

项目资料管理:助力项目管理,通过创建书签文件夹集中存储项目相关链接和资源,促进信息共享。

知识整合与回顾:作为知识管理工具,帮助用户整理学习资料、研究论文等,便于检索和复习。

教育资源平台:教育机构可利用Servas管理课件、学生资料等教学资源,实现资源的集中与共享。

高度定制化:用户可根据需求定制功能,添加插件或开发新功能,满足特定管理需求。

安全隐私保障:自托管模式确保用户数据安全和隐私保护,避免第三方风险。

Servas的部署流程

详细文档可参考开源项目地址:https://github.com/beromir/Servas

在这里插入图片描述

查看docker服务状态

[root@flexusx-251f ~]# systemctl status docker.service
● docker.service - Docker Application Container EngineLoaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: d>Active: active (running) since Tue 2024-09-03 16:33:06 CST; 3 days ago
TriggeredBy: ● docker.socketDocs: https://docs.docker.comMain PID: 586452 (dockerd)Tasks: 249Memory: 233.5MCGroup: /system.slice/docker.service.............

检查docekr版本

[root@flexusx-251f ~]# docker --version
Docker version 27.1.1, build 6312585

检查docker compose 版本

检查Docker compose版本,确保2.0以上版本

[root@flexusx-251f ~]# docker-compose -v
Docker Compose version v2.29.1

拉取镜像

[root@flexusx-251f ~]# docker pull  beromir/servas

编写.env文件

可以使用两种数据存储方式,在本次部署中我们使用SQLite,也可使用MySQL

[root@flexusx-251f ~]# mkdir /servas
[root@flexusx-251f ~]# cd /servas/
[root@flexusx-251f servas]# vim .env
[root@flexusx-251f servas]# cat .env
APP_NAME=Servas
APP_ENV=production
APP_KEY=
APP_DEBUG=false
APP_URL=https://123.249.27.118  # 修改为自己主机IPSERVAS_ENABLE_REGISTRATION=true# SQLite
DB_CONNECTION=sqlite
DB_DATABASE=/var/www/html/database/sqlite/servas.db
DB_FOREIGN_KEYS=true

编写docekr-compose.yaml文件

[root@flexusx-251f servas]# vim docekr-compose.yaml
[root@flexusx-251f servas]# cat docekr-compose.yaml
version: "3"services:servas:image: beromir/servascontainer_name: servasrestart: alwaysports:- "2000:80"volumes:- ./.env:/var/www/html/.env  # 将宿主机的.env文件挂载到容器内的/var/www/html/.env路径- servas-db-sqlite:/var/www/html/database/sqlite # 将卷挂载到容器内的/var/www/html/database/sqlite路径volumes:servas-db-sqlite:    # 创建卷

创建容器

[root@flexusx-251f servas]# docker-compose up -d
WARN[0000] /servas/docker-compose.yaml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
[+] Running 4/4v Network servas_default          Created                                        0.1sv Volume "servas_servas-db-data"  Created                                        0.0sv Container servas-db-1           Started                                        0.5sv Container servas                Started                                        0.6s

生成应用程序秘钥

生成密钥并重新启动 servas 容器

[root@flexusx-251f servas]# docker exec -it servas php artisan key:generate --forceINFO  Application key set successfully.[root@flexusx-251f servas]# docker-compose restart
WARN[0000] /servas/docker-compose.yaml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
[+] Restarting 2/2v Container servas       Started                                                10.2sv Container servas-db-1  Started                                                 1.4s

查看容器运行状态

[root@flexusx-251f servas]# docker-compose ps
WARN[0000] /servas/docker-compose.yaml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
NAME          IMAGE            COMMAND                  SERVICE   CREATED         STATUS          PORTS
servas        beromir/servas   "/docker-entrypoint.…"   servas    5 minutes ago   Up 41 seconds   9000/tcp, 0.0.0.0:6666->80/tcp, :::6666->80/tcp
servas-db-1   mysql:5.7        "docker-entrypoint.s…"   db        5 minutes ago   Up 50 seconds   3306/tcp, 33060/tcp

访问servas

放行安装组,端口号:2000

在这里插入图片描述

在浏览器输入地址:http://主机IP:2000/login(默认进入登录页面,如果访问不成功,可查看日志报错信息)

在这里插入图片描述

注册账号,访问地址:http://主机IP:2000/register

输入用户名,邮箱,密码进行注册

在这里插入图片描述

点击注册会自动登录进主页面,也可选择自己登录

在这里插入图片描述

登陆成功

在这里插入图片描述

基本使用

新增一个书签链接,点击左侧导航栏 Groups 的 + ,新建分组

在这里插入图片描述

自定义组名,点击创建

在这里插入图片描述

点击右上角新增连接

在这里插入图片描述

输入网址,标题,选择分组

在这里插入图片描述

点击创建链接

在这里插入图片描述

创建 成功,点击右上角可进行访问

在这里插入图片描述

访问成功,完成搭建

在这里插入图片描述

总结

在华为云Flexusx服务器上部署Servas书签管理工具,优势显著。Flexusx以其高性能、高可用性和弹性伸缩能力,为Servas提供了稳定可靠的运行环境。Servas的自托管特性与Flexusx的安全隔离相结合,确保了用户数据的安全与隐私。同时,Flexusx的灵活计费模式降低了用户的IT成本,让用户能够按需付费,有效管理预算。此外,华为云的专业技术支持和全球服务网络,为用户提供了全方位的服务保障。选择华为云Flexusx服务器部署Servas,不仅提升了书签管理的效率与安全性,还享受到了云计算带来的便捷与成本优势。如果你也需要,赶紧部署起来吧

产品链接:华为云Flexus云服务器X实例_直播_建站服务器-华为云

在这里插入图片描述

这篇关于828华为云征文 | 华为云Flexusx实例,高效部署Servas书签管理工具的优选平台的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1146433

相关文章

C#使用Spire.Doc for .NET实现HTML转Word的高效方案

《C#使用Spire.Docfor.NET实现HTML转Word的高效方案》在Web开发中,HTML内容的生成与处理是高频需求,然而,当用户需要将HTML页面或动态生成的HTML字符串转换为Wor... 目录引言一、html转Word的典型场景与挑战二、用 Spire.Doc 实现 HTML 转 Word1

Redis实现高效内存管理的示例代码

《Redis实现高效内存管理的示例代码》Redis内存管理是其核心功能之一,为了高效地利用内存,Redis采用了多种技术和策略,如优化的数据结构、内存分配策略、内存回收、数据压缩等,下面就来详细的介绍... 目录1. 内存分配策略jemalloc 的使用2. 数据压缩和编码ziplist示例代码3. 优化的

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

MySQL的配置文件详解及实例代码

《MySQL的配置文件详解及实例代码》MySQL的配置文件是服务器运行的重要组成部分,用于设置服务器操作的各种参数,下面:本文主要介绍MySQL配置文件的相关资料,文中通过代码介绍的非常详细,需要... 目录前言一、配置文件结构1.[mysqld]2.[client]3.[mysql]4.[mysqldum

使用SpringBoot+InfluxDB实现高效数据存储与查询

《使用SpringBoot+InfluxDB实现高效数据存储与查询》InfluxDB是一个开源的时间序列数据库,特别适合处理带有时间戳的监控数据、指标数据等,下面详细介绍如何在SpringBoot项目... 目录1、项目介绍2、 InfluxDB 介绍3、Spring Boot 配置 InfluxDB4、I

C#高效实现Word文档内容查找与替换的6种方法

《C#高效实现Word文档内容查找与替换的6种方法》在日常文档处理工作中,尤其是面对大型Word文档时,手动查找、替换文本往往既耗时又容易出错,本文整理了C#查找与替换Word内容的6种方法,大家可以... 目录环境准备方法一:查找文本并替换为新文本方法二:使用正则表达式查找并替换文本方法三:将文本替换为图

Python如何实现高效的文件/目录比较

《Python如何实现高效的文件/目录比较》在系统维护、数据同步或版本控制场景中,我们经常需要比较两个目录的差异,本文将分享一下如何用Python实现高效的文件/目录比较,并灵活处理排除规则,希望对大... 目录案例一:基础目录比较与排除实现案例二:高性能大文件比较案例三:跨平台路径处理案例四:可视化差异报

Java整合Protocol Buffers实现高效数据序列化实践

《Java整合ProtocolBuffers实现高效数据序列化实践》ProtocolBuffers是Google开发的一种语言中立、平台中立、可扩展的结构化数据序列化机制,类似于XML但更小、更快... 目录一、Protocol Buffers简介1.1 什么是Protocol Buffers1.2 Pro

Java高效实现Word转PDF的完整指南

《Java高效实现Word转PDF的完整指南》这篇文章主要为大家详细介绍了如何用Spire.DocforJava库实现Word到PDF文档的快速转换,并解析其转换选项的灵活配置技巧,希望对大家有所帮助... 目录方法一:三步实现核心功能方法二:高级选项配置性能优化建议方法补充ASPose 实现方案Libre

使用Python提取PDF大纲(书签)的完整指南

《使用Python提取PDF大纲(书签)的完整指南》PDF大纲(Outline)​​是PDF文档中的导航结构,通常显示在阅读器的侧边栏中,方便用户快速跳转到文档的不同部分,大纲通常以层级结构组织,包含... 目录一、PDF大纲简介二、准备工作所需工具常见安装问题三、代码实现完整代码核心功能解析四、使用效果控