news 2026/7/31 18:01:24

Docker一键部署Xnote:打造专属轻量级私有笔记系统

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Docker一键部署Xnote:打造专属轻量级私有笔记系统

Docker一键部署Xnote:打造专属轻量级私有笔记系统

  • 一、Xnote介绍
    • 1.1 Xnote简介
    • 1.2 Xnote特点
    • 1.3 Xnote使用场景
  • 二、本地环境介绍
    • 2.1 本地环境规划
    • 2.2 本次实践介绍
  • 三、本地环境检查
    • 3.1 检查Docker服务状态
    • 3.2 检查Docker版本
    • 3.3 检查docker compose 版本
  • 四、下载Xnote镜像
  • 五、部署署Xnote应用
    • 5.1 创建部署目录
    • 5.2 编辑boot.properties文件
    • 5.3 编辑docker-compose.yml文件
    • 5.3 创建Xnote容器
    • 5.4 检查Xnote容器状态
    • 5.5 检查Xnote容器日志
  • 六、访问Xnote首页
    • 6.1 进入Xnote初始页
    • 6.2 登录Xnote
    • 6.3 新建笔记标签
    • 6.4 编辑笔记内容
  • 七、总结

一、Xnote介绍

1.1 Xnote简介

  • Xnote简介

xnote是一款面向个人的轻量级笔记系统,提供多种维度的数据管理功能,致力于把个人从信息过载中解放出来。

1.2 Xnote特点

  • 拥有丰富的数据管理能力,支持多种笔记格式以及文件管理功能
  • 默认提供了一些常用的工具,同时提供扩展能力,用户可以编写各种插件满足自己的需求
  • 跨平台,支持Windows、Mac、Linux三大平台,可以在云服务上部署,也可以在本地运行
  • 100%自由的数据控制权,可以运行在多种数据库环境中
  • 支持小规模的多用户,面向多用户的商业场景使用请谨慎

1.3 Xnote使用场景

  • 个人笔记管理:xnote可以帮助个人快速记录和整理各种类型的笔记,包括文本、图片、链接等。用户可以根据需求创建不同的笔记本,将相关的笔记整理在一起,并且可以通过标签、分类等方式进行细致的管理。

  • 项目管理:xnote提供了任务和标签的功能,可以用于个人或小团队的项目管理。用户可以创建任务,在任务中添加子任务、设置截止日期和优先级,还可以给任务打上标签,方便快速筛选和查找。

  • 知识管理:xnote支持富文本编辑,用户可以灵活地创建和编辑自己的知识库。可以将学习笔记、技术文档、网页链接等都整理到xnote中,方便自己查阅和复习。

  • 时间管理:xnote提供了提醒功能,用户可以设置提醒时间,让自己不会错过重要的事项。同时,用户还可以将待办事项与日历同步,更加高效地安排和管理时间。

  • 团队协作:xnote支持多人协作,团队成员可以共享笔记本和任务,方便团队成员之间的沟通和合作。而且,xnote还提供评论和反馈的功能,让团队成员可以及时交流和讨论。

二、本地环境介绍

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为centos7.6。

hostnameIP地址操作系统版本Docker版本
jeven192.168.3.166centos 7.620.10.17

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.使用Docker部Xnote轻量级笔记系统。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

[root@jeven ~]# systemctl status docker● docker.service - Docker Application Container Engine Loaded: loaded(/usr/lib/systemd/system/docker.service;enabled;vendor preset: disabled)Active: active(running)since Thu2024-03-2118:42:13 CST;3min 53s ago Docs: https://docs.docker.com Main PID:43305(dockerd)Tasks:82Memory:103.6M CGroup: /system.slice/docker.service

3.2 检查Docker版本

检查Docker版本

[root@jeven ~]# docker -vDocker version20.10.17, build 100c701

3.3 检查docker compose 版本

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

[root@jeven ~]# docker compose versionDocker Compose version v2.6.0

四、下载Xnote镜像

在华为云镜像仓库中拉取Xnote镜像

[root@jeven xnote]# docker pull swr.cn-north-4.myhuaweicloud.com/jeven/xnoteUsing default tag: latest latest: Pulling from jeven/xnote Digest: sha256:10a511df294788bcb8fa9f2c98bdd3a66b48ef65222347d55c1af030e131dbdf Status: Image is up todateforswr.cn-north-4.myhuaweicloud.com/jeven/xnote:latest swr.cn-north-4.myhuaweicloud.com/jeven/xnote:latest

五、部署署Xnote应用

5.1 创建部署目录

创建部署目录

mkdir-p/data/xnote/data&&cd/data/xnote

目录授权

chmod-R777/data/xnote/

5.2 编辑boot.properties文件

编辑boot.properties文件,主要修改db_driver = sqlite部分,定义数据库类型,这里直接使用sqlite数据库。

vimboot.properties
# 这是系统默认配置,请不要编辑# 配置项使用下划线(_)划分模块和单词,除了最后一个(.type),其他地方不要使用(.)# 关于数字的说明# kb/mb/gb/tb/pb的进位是1024, k/m的进位是1000# 例如: 1kb = 1024, 1k = 1000# 数据存储的根目录data=./data# HTTP服务的端口号port=1234# 服务器根目录,默认是空(根路径)server_home=# 最小线程数min_threads=15min_threads.type=int# 是否开启调试模式debug=falsedebug.type=bool# 启动后是否自动打开浏览器(在桌面运行的选项)open_browser=falseopen_browser.type=bool# 启动后是否播放语音提示ringtone=falseringtone.type=bool# 是否强制跳转httpsforce_https=falseforce_https.type=bool# 是否快速重载(开发模式使用)fast_reload=falsefast_reload.type=bool# TODO 重启的内存阈值 -1表示不重启reload_mem_threshold=-1reload_mem_threshold.type=int# 定时任务开关cron_enabled=truecron_enabled.type=bool# 是否开启WEBDAVwebdav=falsewebdav.type=bool# 数据库驱动 {leveldb, leveldbpy, sqlite, mysql}db_driver=sqlite# 缓存驱动 {memory, db, redis}db_driver_cache=memory# 是否开启数据库备份db_backup=truedb_backup.type=bool# 是否开启数据库debug日志db_log_debug=falsedb_log_debug.type=bool# 数据库备份失效时间(天)db_backup_expire_days=5db_backup_expire_days.type=int# 是否开启数据库调试db_debug=falsedb_debug.type=bool# 分析table_proxy性能(临时)db_profile_table_proxy=falsedb_profile_table_proxy.type=bool# 系统日志最大长度db_sys_log_max_size=10000db_sys_log_max_size.type=int# leveldb缓存配置block_cache_size=16777216# 16Mblock_cache_size.type=int# leveldb的写入缓冲配置(MemTable的大小)write_buffer_size=4194304# 4Mwrite_buffer_size.type=int# leveldb最大打开的文件数max_open_files=1000max_open_files.type=int# lmdb配置lmdb_map_size=1GB lmdb_map_size.type=int# 主从同步配置# leader: 主节点# follower: 从节点node_role=leader# 节点IDnode_id=my_node_id# 是否构建文件同步索引build_fs_sync_index=falsebuild_fs_sync_index.type=bool# 是否开启binlogbinlog=falsebinlog.type=bool# binlog最大值binlog_max_size=1M binlog_max_size.type=int# 是否同步文件sync_files_from_leader=falsesync_files_from_leader.type=bool# 是否同步数据库sync_db_from_leader=falsesync_db_from_leader.type=bool# 同步的轮询时间sync_interval_seconds=3sync_interval_seconds.type=int# 笔记本配置,笔记本的最大深度max_book_depth=2max_book_depth.type=int# sqlite的journal模式,默认DELETE,改成WAL可以提高并发性能,但是兼容性比较差sqlite_journal_mode=DELETE# mysql配置(还不稳定,试验中)mysql_database=xnote mysql_host=mysql_user=mysql_password=mysql_cloud_type=mysql_pool_size=10mysql_pool_size.type=int mysql_port=3306mysql_port.type=int# 权限配置auth_max_session_size=20# 单个用户最大会话数量auth_max_session_size.type=int# UI配置ui_show_footer=trueui_show_footer.type=bool

5.3 编辑docker-compose.yml文件

编辑docker-compose.yml文件

version:"3"services:server:image:swr.cn-north-4.myhuaweicloud.com/jeven/xnote:latestcontainer_name:xnotevolumes:-/data/xnote/data:/xnote/data-/data/xnote/boot.properties:/config/boot/boot.sae.propertiesports:-5238:1234

5.3 创建Xnote容器

  • 使用docker-compose.yaml文件创建Xnote容器
[root@jeven xnote]# docker compose up -d[+]Running2/2 ⠿ Network xnote_default Created0.1s ⠿ Container xnote Started1.7s

5.4 检查Xnote容器状态

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

[root@jeven xnote]# docker compose psNAME COMMAND SERVICE STATUS PORTS xnote"python sentinel.py …"server running0.0.0.0:5238->1234/tcp, :::5238->1234/tcp

5.5 检查Xnote容器日志

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

dockercompose logs

六、访问Xnote首页

6.1 进入Xnote初始页

访问地址:http://192.168.3.166:5238,将IP替换为自己服务器IP地址,进入到Xnote初始页。如果无法访问,则检查服务器防火墙是否设置,云服务器的安全组端口是否放行等。

6.2 登录Xnote

默认登录账号密码为admin/123456,进入Xnote首页。


6.3 新建笔记标签

首页——管理笔记本——新建笔记本,输入笔记本名称。

6.4 编辑笔记内容

点击创建笔记,编辑笔记标题。


编辑笔记内容,保存即可。

查看笔记效果

七、总结

Xnote是一款轻量级的笔记系统,可以使用Docker快速部署。它有简洁高效的页面,适合新手上手操作。在我的初步体验中,我发现Xnote页面流畅,没有卡顿现象,响应速度很快。它还提供了很好的笔记分类功能,方便我们整理和查找笔记。另外,Xnote还支持markdown笔记,这对于记录技术内容非常有帮助。如果你需要一个简单而实用的笔记系统,可以尝试使用体验一下Xnote。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/31 17:59:20

《黑神话悟空》三十五项修改器下载分享 黑神话悟空修改器怎么下

下载链接 风灵月影发布了《黑神话悟空》三十五项修改器,可以调整角色的攻击防御数值,还有道具数量,还可以开启无敌模式。下面为大家带来《黑神话悟空》三十五项修改器下载分享,希望对大家有用。 基本功能 点击简体、繁体、Engl…

作者头像 李华
网站建设 2026/7/31 17:59:16

通达信缠论分析插件ChanlunX:从繁琐手工到智能识别的完整解决方案

通达信缠论分析插件ChanlunX:从繁琐手工到智能识别的完整解决方案 【免费下载链接】ChanlunX 缠中说禅炒股缠论可视化插件 项目地址: https://gitcode.com/gh_mirrors/ch/ChanlunX 在技术分析的广阔领域中,缠论以其严谨的数学逻辑和完整的理论体系…

作者头像 李华
网站建设 2026/7/31 17:58:13

基于傅立叶变换的谐波检测(开题报告)

毕业论文(设计)题目:基于傅立叶变换的谐波检测 1.毕业论文(设计)选题背景、研究意义 1.1选题背景 一般而言,理想的电力系统是以单一而固定的频率以及规定的固定幅值的电压水平供电的。然而,电网通常不能满足…

作者头像 李华
网站建设 2026/7/31 17:58:09

告别手动抢票烦恼:DamaiHelper全能抢票王的技术革命

告别手动抢票烦恼:DamaiHelper全能抢票王的技术革命 【免费下载链接】damaihelper 支持大麦网,淘票票、缤玩岛等多个平台,演唱会演出抢票脚本 项目地址: https://gitcode.com/gh_mirrors/dam/damaihelper 还在为抢不到周杰伦、五月天等…

作者头像 李华
网站建设 2026/7/31 17:55:00

AI 驱动漏洞利用主导数据泄露的企业全维度风险治理研究

摘要 Verizon 2026 年度数据泄露调查报告(DBIR)发布 19 年来首次出现关键风险转向:软件漏洞利用取代凭证窃取成为企业入侵首要初始向量,占全部泄露事件的 31%,人工智能技术大幅压缩漏洞披露到武器化利用的时间窗口&…

作者头像 李华
网站建设 2026/7/31 17:54:36

<<线性优化导论-Dimitris Bertsimas>>

<INTRODUCTION TO LINEAR OPTIMIZATION> , 用minerU将pdf->md文件, 再用AI翻译英文为中文, 做运筹优化的再也不用担心英文问题了见附录资源(*md.zh)

作者头像 李华