需要了解
- 本文章主要讲述在 华为云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 Engine
Loaded: 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.socket
Docs: https://docs.docker.com
Main PID: 586452 (dockerd)
Tasks: 249
Memory: 233.5M
CGroup: /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 # 修改为自己主机IP
SERVAS_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/servas
container_name: servas
restart: always
ports:
- "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/4
v Network servas_default Created 0.1s
v Volume "servas_servas-db-data" Created 0.0s
v Container servas-db-1 Started 0.5s
v Container servas Started 0.6s
生成应用程序秘钥
生成密钥并重新启动
servas
容器
[root@flexusx-251f servas]# docker exec -it servas php artisan key:generate --force
INFO 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/2
v Container servas Started 10.2s
v 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实例_直播_建站服务器-华为云