手把手部署BookLore魔法电子书库:打造你的私人云端图书馆
电子书的管理方式似乎总是落后于时代。相信许多朋友已经尝试过Calibre Web、Kavita或Komga这类服务。本期我们将介绍另一款功能强大的图书馆项目——BookLore。它拥有硬核的界面和丰富的功能,特别适合漫画与电子书收藏爱好者用来系统性地整理个人藏书库。
如果你热爱阅读,却又苦于在不同设备间整理与访问书籍的繁琐流程,那么不妨尝试一下这个项目。它能够帮助你轻松地存储、管理各类电子书,并支持直接从浏览器进行同步阅读。倘若你觉得网页版阅读体验尚有不足,还可以将其连接到其他第三方阅读应用,从而获得更佳的阅读感受。

项目概览
该项目的完整名称是 booklore-app/booklore,可以在GitHub上直接搜索到。项目作者在其主页提供了体验Demo,有兴趣的读者可以先行试用一番。
简而言之,BookLore 是一款专为自托管环境打造的数字图书馆Web应用程序。通过它,你可以实现以下一系列功能:
- 上传、分类与整理:支持 PDF、ePub、CBZ、CBR 和 CB7 等多种主流电子书格式。
- 自动抓取书籍元数据:自动从网络获取书籍的封面、作者、简介、评分等信息。
- 多用户协作:支持创建多个用户账户,并可设置不同的操作权限,便于账号管理。
- 内置阅读器:提供可直接在网页中在线阅读的功能。
- 阅读进度跟踪:记录你的阅读进度并提供书籍相关的统计信息。
- 同步与连接:支持通过 OPDS 协议与 Kobo、KOReader 等设备或其他阅读应用同步阅读进度。
- 便捷导入:利用 BookDrop 功能,通过拖放文件即可实现自动导入。
- 全设备响应:在手机、平板和电脑上均能获得良好的浏览体验。
核心亮点与深度功能
1. 智能图书管理体系
BookLore 采用“图书馆 (Library) + 书架 (Shelves)”的层级系统,允许你按照作者、主题、阅读状态等维度自定义分类。其独有的“魔法书架 (Magic Shelves)”功能,能够根据你预设的规则(如“最近添加”、“未读漫画”)动态地更新图书集合。此外,高级搜索功能支持通过关键字和特定元数据字段进行检索,帮助你快速定位目标书籍。
2. 强大的元数据抓取引擎
应用能够自动从多个在线图书信息源抓取书籍的元数据。当然,你也可以随时手动编辑或调整这些自动获取的信息。这一功能对于维护一个外观专业、信息完整的个人图书库而言至关重要。
3. 多格式在线阅读支持
BookLore 内置的阅读器提供了良好的格式兼容性,包括:
- PDF 文档阅读
- ePub 电子书阅读
- CBX / 漫画文件阅读 你无需下载文件即可直接在浏览器中浏览内容,系统还会自动跟踪你的阅读进度。
4. 完善的多用户与权限管理
管理员可以轻松创建多个用户账户,并为不同的用户分配差异化的操作权限,例如上传、编辑或删除书籍的权限。这使得 BookLore 不仅适用于个人用户,也非常适合家庭或小型团队共同使用和管理一个共享书库。
5. 灵活的连接与同步机制
除了支持标准的 OPDS 协议,方便连接各类阅读器客户端外,BookLore 还能够与 Kobo 和 KOReader 等专用阅读设备同步阅读进度。此外,它还提供了通过电子邮件分享书籍的便捷功能。
6. BookDrop 自动导入功能
这是一个极具实用性的特性:你只需将电子书文件拖入NAS上指定的“bookdrop”文件夹,BookLore 便会自动检测到新文件,并完成导入与元数据抓取的全过程,极大简化了书籍添加的步骤。
手把手教程:使用Docker快速部署轻量级Markdown博客PaperGrid
在之前的分享中,我们探讨了使用 Halo 2.0 搭建个人博客的方法。对于部分用户而言,这类项目功能虽然全面,但整体架构可能略显繁重。相比之下,许多用户更青睐于轻量化、界面简洁,甚至仅需一个能够稳定托管内容的简易站点。
近期,我发现了一个名为 PaperGrid 的新兴博客项目,其整体设计风格倾向于轻量化,完美支持 Markdown 编辑,并且前端视觉效果相当出色!同时,它还具备不错的可定制性与探索空间。本文将简要介绍如何部署并开始使用它。

就我个人而言,博客已经逐渐取代了传统的笔记工具。将思考过程、技术实践与使用心得记录下来,不仅便于日后回顾,也能分享给有共同兴趣的伙伴。像 PaperGrid 这样部署过程相对简单、界面设计也足够清晰的项目,非常适合用来构建一个专属的个人记录空间。
PaperGrid项目概览
完整项目名称:xywml/PaperGrid,可以在 GitHub 上进行搜索。
这是一个基于 Next.js App Router 构建的轻量化个人博客与后台管理系统。它内置了用户认证、文章管理、评论功能和系统设置模块,并支持中文/英文双语界面与深色模式切换。
作者说明:项目目前处于快速开发迭代阶段,欢迎部署使用、给予 Star 评价或反馈建议。
核心功能特性
- 现代技术栈:采用 Next.js App Router 与 React 19。
- 数据管理:集成 Prisma ORM 进行数据库操作。
- 用户认证:使用 NextAuth 实现安全的身份验证。
- 完整后台:提供文章、标签、分类、评论、用户、系统设置及文件管理的后台界面。
- 文件管理:支持本地图片上传、预览、删除以及 URL 自动回填至编辑器。
- 强大内容支持:兼容 MDX 格式,具备代码高亮、数学公式渲染与图表绘制能力。
- 国际化与主题:支持多语言切换,并内置深色模式。
- 多样前端主题:管理员可在后台“样式”设置中一键切换多套前台主题(例如:纸格笔记、终端机能、清透视窗、像素账本)。
- 扩展可能:具备集成智能 AI 助手的潜能。
详细部署步骤
本文以威联通(QNAP)NAS 为例,演示通过 Docker Compose 进行部署的过程。
以下部署代码可实现服务的快速启动,请根据你的环境调整配置:
services:
papergrid:
image: ghcr.io/xywml/papergrid:latest
container_name: papergrid
ports:
- "6066:3000"
environment:
DATABASE_URL: "file:/data/db.sqlite"
# 可选:为 AI 向量索引使用单独的 SQLite 文件
# AI_VECTOR_DATABASE_URL: "file:/data/ai-index.sqlite"
# SQLITE_JOURNAL_MODE: "DELETE"
# 初始使用 NAS IP 加端口访问,后续若配置反向代理或域名,需修改此处
NEXTAUTH_URL: "http://192.168.100.138:6066"
NEXT_PUBLIC_APP_URL: "http://192.168.100.138:6066"
# 生产环境务必设置一个足够长且复杂的随机字符串
NEXTAUTH_SECRET: "请替换成一串足够长的随机字符串"
# 设置本地媒体文件与缓存存储路径
MEDIA_ROOT: "/data/uploads"
NEXT_CACHE_DIR: "/data/.next-cache"
# 首次初始化容器时的可选配置(用于创建管理员)
# INIT_ADMIN_TOKEN: "请替换为随机字符串"
# ADMIN_INIT_PASSWORD: "请替换为强密码"
# 可先跳过 OAuth / SMTP 配置,待基础服务运行后再补充
NEXT_PUBLIC_DEFAULT_LOCALE: "zh"
# 在内网环境且未配置反向代理时,允许信任 Host 头
AUTH_TRUST_HOST: "true"
volumes:
- /share/Container/boke/data:/data
restart: unless-stopped
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "5"
以下是完整的的环境变量列表,你也可以选择创建独立的 .env 文件进行配置:
手把手教程:使用开源项目在NAS上搭建私人H5棋牌游戏室
今天将介绍一款基于H5技术的棋牌游戏平台。这是一个商用级别的项目,旨在让用户摆脱公共平台的种种限制,创造一个无后台监控、无人工干预、完全公平公正的游戏环境。该平台兼容性强,支持在手机、电脑、平板等任何带有浏览器的设备上运行,真正做到即开即玩。

重要提示:对于初次尝试部署的朋友,强烈建议严格遵循本教程的每一步操作。请勿在没有充分理解的情况下随意修改配置文件,也无需急于配置外网访问,按部就班完成内网部署是成功的第一步。
准备工作
首先,访问该项目的GitHub仓库地址:https://github.com/openinggame/qp,下载整个项目源码。

在你的NAS设备上,创建一个名为openinggame的文件夹,并将刚刚下载的ZIP压缩包放入其中。

解压这个ZIP文件。解压后,你会看到多个文件和文件夹,为了部署清晰,我们只需要保留以下三个核心文件:docker-compose.yml、mongo_data.tar.gz和mysql.tar.gz。可以将其它不必要的文件暂时移开或删除。

接下来,分别解压mongo_data.tar.gz和mysql.tar.gz这两个压缩包。解压完成后,你的文件夹结构应整理成类似下图所示的样子,包含必要的数据库数据目录和配置文件。

目录说明:mongo_data文件夹内部用于存放MongoDB数据库的数据文件。

目录说明:mysql文件夹内部则用于存放MySQL数据库的数据文件。

安装与部署
现在进入部署环节。在你的NAS的Docker管理界面(如Portainer或群晖的Docker套件)中,创建一个新项目(Stack)。选择项目路径为我们刚才准备的openinggame目录,并导入其中的docker-compose.yml文件作为模板。

原始的docker-compose.yml模板内容较为全面,但部分配置可能需要根据你的实际环境进行调整,例如网络配置等。其完整内容如下:
version: "3.0"
services:
web:
container_name: web0
image: openinggame/web:v1
ports:
- "80:80"
environment:
- API_HOST=<ip address>
networks:
- game
depends_on:
- server
server:
container_name: server0
image: openinggame/server:v1
ports:
- "81:81"
networks:
- game
depends_on:
- etcd
- kafka
- redis1
- mysql
- mongodb
mysql:
image: mysql:8.0.23
container_name: mysql0
command:
--default-authentication-plugin=mysql_native_password
--character-set-server=utf8mb4
--collation-server=utf8mb4_general_ci
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: root
volumes:
- /data/mysql:/var/lib/mysql
- mysqlconf:/etc/mysql/conf.d
networks:
- game
redis0:
container_name: redis0
image: redis:latest
volumes:
- redisdata0:/data
command: redis-server --requirepass 123456
networks:
- game
depends_on:
- etcd
redis1:
container_name: redis1
image: redis:latest
volumes:
- redisdata1:/data
command: redis-server --requirepass 123456
networks:
- game
depends_on:
- etcd
redis2:
container_name: redis2
image: redis:latest
volumes:
- redisdata2:/data
command: redis-server --requirepass 123456
networks:
- game
depends_on:
- mysql
- etcd
- redis1
zookeeper:
container_name: zookeeper
image: wurstmeister/zookeeper
restart: always
networks:
- game
kafka:
container_name: kafka0
image: wurstmeister/kafka:2.12-2.3.0
environment:
- KAFKA_BROKER_ID=0
- KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181
- KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://kafka0:9092
- KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092
volumes:
- /var/run/docker.sock:/var/run/docker.sock
restart: always
depends_on:
- zookeeper
networks:
- game
etcd:
image: quay.io/coreos/etcd:v3.2.32
container_name: etcd0
environment:
ETCDCTL_API: 3
command:
- etcd
- --name=etcd0
- --data-dir=/data/etcd-data
- --advertise-client-urls=http://etcd0:2379
- --listen-client-urls=http://0.0.0.0:2379
restart: always
volumes:
- etcd0_data:/etcd-data
networks:
- game
mongodb:
container_name: mongodb0
image: mongo:4.4.4
restart: always
volumes:
- /data/mongo_data:/data/db
- mongodb_logs:/data/logs
command: --auth
networks:
- game
depends_on:
- etcd
volumes:
mysqlconf:
mongodb_logs:
etcd0_data:
redisdata0:
redisdata1:
redisdata2:
networks:
game:
external:
true
为了简化部署过程,我使用了一个经过调整的模板。这个简化版主要修改了卷的挂载方式(使用相对路径./),并移除了自定义网络声明,让Docker Compose自动管理。你唯一需要修改的地方就是将environment中的API_HOST值,替换为你自己NAS在内网中的实际IP地址。
手把手教程:在NAS上部署E视界(DongguaTV),打造专属私人影院
本文将介绍如何将您的网络附加存储设备(NAS)转变为一个功能强大的个人流媒体中心。通过部署 E 视界(可视为冬瓜 TV 的增强与重构版本),您可以获得媲美主流平台的观影体验。E 视界是一款基于现代 Node.js 与 Vue 3 技术栈构建的流媒体聚合播放器,其设计理念强调智能化与沉浸感。

该软件的核心优势在于其双引擎架构与高度智能化的资源管理。一方面,它深度整合 TMDb(The Movie Database),为影视内容提供高质量的海报、背景图、评分、剧情简介及演职员表等元数据,界面风格向 Netflix 看齐。另一方面,它集成了超过 48 个第三方资源站点的 API(基于 Maccms),并具备自动测速与失效源过滤机制,确保播放线路的可用性与流畅度。
在搜索体验上,E 视界采用了实时流式搜索技术,搜索结果会即时呈现,无需等待所有源站返回。系统能自动将同一影片的不同播放线路进行分组与合并,并在卡片上动态显示可用源的数量。所有搜索记录与元数据均通过内置的高性能 SQLite 数据库进行缓存,实现秒级响应。
播放功能也经过精心设计。全新的影院模式播放页采用暗色系布局,支持剧集网格化选择。播放前会进行线路测速,并在播放失败时自动切换至下一个可用源,无需人工干预。软件还支持 DLNA/AirPlay 投屏功能。
针对中国大陆用户可能遇到的网络问题,E 视界进行了专门优化。它采用双重 IP 检测机制来准确判断用户地域,并自动切换至 TMDB 反代模式以保障元数据正常加载。所有核心前端依赖库均已本地化部署,彻底避免了因公共 CDN 访问不畅导致的加载缓慢问题。项目提供一键式安装脚本,简化配置流程。
在设备兼容性方面,E 视界表现全面。它提供专为 Android TV 或电视盒子优化的 APK 安装包,完美适配遥控器操作。移动端应用封装精良,支持沉浸式状态栏,提供接近原生应用的流畅体验。同时,它也支持 PWA,可添加到设备主屏幕快速启动。
安全管理功能包括可选的全局访问密码,支持长达一年的记住登录状态,兼顾安全与便利。此外,还支持从远程 URL 加载配置文件,便于多实例的统一管理。
请注意,本教程内容仅限用于技术学习与交流目的。在使用相关软件与服务时,请您务必严格遵守所在地的法律法规及各平台的使用协议,切勿将其用于任何商业用途或非法领域。
前期准备工作
在开始部署之前,您需要完成两项关键配置:准备采集源配置文件 db.json 以及获取 TMDb API 密钥。
配置采集源文件 (db.json)
影视资源的获取依赖于 db.json 文件中定义的采集源(站点)。配置的采集源越多,理论上可检索到的资源范围就越广。请注意,公开分享具体的采集源地址可能涉及侵权风险,因此需要您自行寻找和添加。
项目在首次运行时通常会尝试自动生成 db.json 文件。如果未能生成,建议您手动创建该文件。文件内容结构如下:
{
"sites": [
{
"key": "unique_key1", // 每个站点的唯一标识符(英文字母,不可重复)
"name": "站点名称1", // 在软件界面中显示的名称
"api": "https://...", // Maccms V10/JSON 接口地址
"active": true // 是否启用该站点
},
{
"key": "unique_key2",
"name": "站点名称2",
"api": "https://...",
"active": true
}
// 您可以继续添加更多站点
]
}
获取 TMDb API Key
TMDb 的 API 密钥用于拉取影片的详细信息、海报和评分等元数据,这对于提升界面美观度和使用体验至关重要。获取步骤如下:
私有化笔记神器Anchor:一键部署,实现多端离线同步与数据自主
本期为大家介绍一款优秀的多端适配笔记工具:Anchor。
市面上许多笔记应用要么“功能臃肿、启动缓慢”,要么“离线体验不佳”,还有一些会将用户数据强行绑定在特定的云平台上。Anchor的设计理念非常清晰:追求速度、注重隐私、界面简洁、运行可靠,并且将“离线可用”作为默认的核心设计,而非事后添加的附属功能。(下图引自官方)

用一句话概括其核心:它优先保障本地操作,首先将笔记安全地存储在你自己的设备中,确保本地随时可编辑;在网络连通时,再自动将内容同步到你的其他设备。
什么是Anchor?
其完整项目名为 ZhFahim/anchor,可以在GitHub上进行搜索。
Anchor是一款秉持“离线优先”理念、支持自托管的笔记应用,提供Web端和移动端。你的笔记可以在本地存储并进行离线编辑,当设备在线时,能够实现跨设备的自动同步。
这款工具尤其适合以下人群:
- 对隐私或数据合规有较高要求,不希望长期将笔记存放在第三方云服务的用户。
- 拥有多设备写作需求(例如同时使用电脑和手机),但又希望在没有网络的环境下也能流畅工作的用户。
- 寻求一个能够“部署到自己的服务器或NAS上即可使用”的轻量级笔记系统的用户。
核心功能亮点
Anchor的功能设计并不追求花哨,而是紧密贴合“日常记笔记”的核心需求:
- 富文本编辑器:支持标题、列表、勾选框、加粗/斜体等常用格式。
- 标签系统:支持自定义标签及颜色,便于分类和检索。
- 内容管理:支持置顶重要笔记、归档不常用内容、提供回收站功能(软删除)以便误删恢复。
- 本地搜索:支持按标题或内容进行检索(所有搜索操作在本地完成)。
- 离线优先与自动同步:离线状态下可照常编写,联网后自动同步至其他已登录设备。
- 管理面板:提供用户管理、注册控制、系统统计等功能。
- 笔记分享(近期新增重点功能):可以将笔记分享给其他用户,并灵活设置查看者或编辑者权限。
根据其规划,未来可能增加的功能包括:OIDC认证、媒体附件(如图片、PDF、录音)支持、实时协作以及提醒和通知。
详细部署指南
此处我们以威联通(QNAP)NAS为例,演示通过Docker Compose方式部署Anchor。
部署参考代码如下:
services:
anchor:
image: ghcr.io/zhfahim/anchor:latest
container_name: anchor
restart: always
ports:
- "9527:3000"
volumes:
- /share/Container/anchor:/data
打开威联通NAS的Container Station,创建一个新的应用程序。

如果有使用独立数据库的需求,可以参考项目作者提供的相关环境变量进行额外配置。

实际使用体验
✅ 网页端操作
部署完成后,在浏览器中输入 你的NAS_IP:9527 即可访问Anchor。首次使用需要注册账户,点击登录界面下的『Create one』。

注册时使用的邮箱地址无需真实有效,只要格式符合要求即可。

成功登录后,主界面如下图所示。

点击即可创建一篇新的笔记。

不过需要指出的是,经过测试,其编辑器目前并不支持Markdown语法。如果此前长期使用Obsidian等以Markdown为核心的编辑工具,并考虑迁移至Anchor,则可能需要对现有笔记进行重新编辑,或先转换格式再导入。
✅ 移动端使用
在项目官方页面可以找到移动端的获取方式。用户可根据自己所用的平台按需下载。需要注意的是,目前官方仅提供了安卓平台的APK安装包。

安装完成后打开应用。首先需要配置服务器地址。根据上文部署情况,应输入 http://你的NAS_IP:9527。如果你已经为此服务配置了反向代理,请使用相应的域名或地址,并注意不要遗漏端口号。

连接服务器并登录后,即可进入应用主界面,之前在网页端创建的笔记会同步显示在此处。
总结与展望
Anchor的发展路线图十分明确:离线优先、保障本地可用性、实现在线同步、支持自托管。如果你期望拥有一款在任何环境下都能随时记录、并且能将数据尽可能掌握在自己手中的笔记工具,那么Anchor是一个非常务实且值得考虑的选择。
目前该项目的更新迭代速度保持得不错,感兴趣的用户可以持续关注其动态。
铁威马F8 SSD NAS深度评测:8盘位全闪存与万兆网口的极致体验
F8 SSD 是一款专为高性能场景设计的全固态硬盘 NAS 服务器。它搭载了英特尔 N95 四核四线程处理器,睿频最高可达 3.4GHz,并集成 UHD 核芯显卡。设备配备了 8GB DDR5 4800MHz 内存与 10Gbps 以太网端口,理论传输速度高达 1024MB/s,为小型企业及追求极速的家庭用户提供了一个理想的存储解决方案。

产品开箱与外观设计
本次开箱评测的对象,正是这款备受瞩目的 8 盘位全固态万兆 NAS。许多关注存储设备的朋友早前便在讨论中反复提及它。

拿到铁威马 F8 SSD 的包装箱,第一感觉是其重量与体积远低于预期,彻底颠覆了对于传统 8 盘位 NAS 设备“笨重庞大”的固有印象,便携性表现突出。

开启包装后,用户手册整齐地放置在最上层。主机机身被定制的泡沫材料紧密地固定在包装中央,这种设计能有效避免设备在运输途中因晃动而产生磕碰损伤。

首先检视全部配件,包含:M.2 硬盘散热套件、用户手册、一根网线、电源适配器、电源线以及一把螺丝刀。

这一盒是专为 M.2 硬盘准备的配件。

被动式散热马甲的做工与质感相当不错。

附赠的一包导热硅胶片,个人感觉质量上乘,厚度较薄且粘性十足。

一包用于固定 M.2 固态硬盘与散热马甲的橡皮筋。

信封内装着一些通常无需仔细阅读的卡片。

作为老牌的 NAS 制造商,铁威马在国际化支持方面做得相当到位。

为了防止用户丢失 M.2 硬盘的固定螺丝,厂商还贴心地在配件包中额外附赠了两颗备用螺丝。

随附的一根标准网线。

电源适配器规格为 12V/6A,最大输出功率 72W。考虑到主要功耗来自 8 块 M.2 固态硬盘,这个功率配置足以应对满负荷运行的需求。

威联通NAS部署OpenClaw保姆级教程:从虚拟机到外网访问
前言
近期,开源AI助手OpenClaw的热度持续攀升。这款以通讯为核心的工具,能够在个人设备上运行,作为自动化与生产力的得力助手。随着各大云厂商纷纷推出便捷的一键部署方案,作为NAS爱好者的我们自然也不愿落后。本教程将详细讲解如何在威联通(QNAP)NAS上快速部署OpenClaw,其他平台用户亦可参考其中的思路。
OpenClaw功能强大,但需要注意其消耗Token的速度。此外,更多高级玩法仍有待探索。如果你仅希望完成基础部署并启用核心功能,那么本文将提供足够清晰的指引。
强烈建议将OpenClaw部署在SSD存储中,以获得更佳的响应速度和运行体验。
全文将分为四个主要部分:在虚拟机中安装Ubuntu系统、在Ubuntu内安装并配置OpenClaw、以Telegram(纸飞机)为例进行对接演示、以及配置外网访问OpenClaw的Web管理界面。教程包含大量配图,请耐心阅读。
准备工作
首先需要下载Linux操作系统的安装镜像。笔者选择了稳定的Ubuntu长期支持(LTS)版本。

其次,我们需要准备大语言模型的API密钥。根据官方文档,若无法直接访问国际服务,国内用户推荐使用以下两家供应商的模型。

笔者过去的AI演示多使用硅基流动,本次我们选择注册智普AI。新用户通常享有免费额度,可用于体验。以下是注册邀请链接,供大家使用。
https://www.bigmodel.cn/invite?icode=iNhcwl7Zvzm5LAGfaOeg3UjPr3uHog9F4g5tjuOUqno%3D

安装 Ubuntu
首先,我们需要在威联通NAS的“App Center”中,搜索并安装“Virtualization Station”(虚拟化工作站)。

安装完成后打开该应用,点击顶部的“创建虚拟机”按钮。

在文件位置设置中,笔者预先在NAS上创建了一个名为“OpenClaw”的共享文件夹,并将之前下载的Ubuntu系统镜像也放置于此。

接下来进行硬件资源分配。建议为虚拟机分配4个CPU核心和4GB内存。好在威联通的虚拟机支持内存动态共享与CPU热调整,后续可灵活变更。

然后添加虚拟硬盘。大部分参数保持默认即可,在“映像档”处选择新建,并指向之前创建的“OpenClaw”共享文件夹。

网络适配器保持默认设置,通常选择连接着路由器的那个物理网口(例如网口一)。

在操作系统镜像选择步骤,浏览并选中存放在“OpenClaw”文件夹下的Ubuntu镜像文件。


显卡等其他设置均可保留默认选项。

最后会有一个配置总览界面,确认无误后即可点击创建。虚拟机创建成功后,状态会显示为“已关机”或“运行中”。点击“远程桌面”按钮即可连接进入安装界面。

如果无法进入安装引导界面,可以尝试重启虚拟机后再行连接。

进入Ubuntu安装程序的欢迎界面后,其流程与Windows安装类似。在安装过程中,建议勾选所有可用的更新,此处不再赘述详细步骤。

安装完成后,系统会自动重启,之后便可使用设置的用户名和密码登录。

至此,系统安装尚未完全结束。通过威联通虚拟机自带的VNC链接(浏览器访问)进行操作,体验往往不佳,主要问题是画面卡顿。部署过飞牛座或OpenWrt的朋友可能深有体会,直接通过IP加端口的方式访问则会流畅许多。为了改善后续操作体验,我们需要配置并使用系统自带的“远程桌面”功能。
首先,打开Ubuntu的设置界面,在左侧栏选择“网络”,查看并记录本机的IP地址(例如笔者虚拟机获取到的IP是192.168.100.128)。

接着,在设置左侧栏最底部找到并进入“系统”设置,开启“桌面共享”和“远程控制”选项。同时,建议修改下方“登录详情”中的密码,默认密码通常较为复杂。

然后,在你的个人电脑(PC)上使用远程桌面客户端进行连接。Windows用户可使用系统自带的“远程桌面连接”,Mac用户可使用“Microsoft Remote Desktop”等应用。在客户端中输入Ubuntu虚拟机的IP地址、用户名和刚才设置的密码。

成功连接后,操作流畅度将得到显著提升。

安装 OpenClaw
在Ubuntu桌面任意空白处点击右键,选择“在终端中打开”。

在打开的终端窗口里,输入OpenClaw官网提供的一键快速安装命令,并按回车执行。
curl -fsSL https://openclaw.ai/install.sh | bash

如果系统提示未找到curl命令,则需要先安装这个基础工具。根据提示,运行相应的包管理命令进行安装即可。

安装好curl后,再次执行上述OpenClaw安装命令。安装程序启动后,首先会遇到一个确认窗口,内容是关于使用协议、潜在安全风险及注意事项的说明。由于OpenClaw被设计为具有高自由度,能够读取文件并执行操作,因此目前不建议将其部署在主力工作电脑上。使用键盘方向键选择“Yes”并回车继续。

接下来进入初始化模式设置,我们选择“QuickStart”(快速启动)以简化流程。

随后需要选择AI模型。我们在准备工作阶段注册的智普AI,其赠送的额度支持使用GLM-4模型。在列表中移动光标,选择智普AI(Zhipu AI)对应的选项。
威联通NAS一键部署QD自动签到系统:千平台支持与推送通知全攻略
本文将详细介绍一个名为QD的自动签到项目,它能够帮助用户自动化完成日常签到任务,从而解放双手、减少重复性操作,让用户将精力集中于更重要的活动。该工具在功能上与青龙面板等类似,但提供了更广泛的平台支持。
QD自动签到项目概述
项目名称为qdtoday/qd,用户可直接在GitHub平台搜索获取。
该工具具备以下核心功能:
✅ 多平台支持:内置超过1000个网站签到模板,同时允许用户自定义站点模板并上传使用。
✅ 多账号管理:针对同一平台,用户可以添加多个账号进行集中管理,避免频繁切换账号的麻烦。
✅ 定时任务:支持自定义任务执行时间,并包含自动更新模板、自动清理日志等维护操作。
✅ 多种通知方式:集成Bark、钉钉、企业微信等通知渠道,确保任务执行结果能够实时推送给用户。
✅ 图形化管理:通过Web界面进行配置,大幅减少手动编辑配置文件的复杂步骤。
✅ 自动更新功能:日常使用中的维护成本较低,系统可自动保持最新状态。
⚠️ 使用注意事项:本项目仅适用于个人学习与自动化实验目的,请用户严格遵守各平台的用户协议及相关规定,避免将其用于违规用途或高频度滥用场景。
威联通NAS上的Docker Compose部署教程
以下步骤以威联通NAS为例,展示如何使用Docker Compose方式部署QD服务。
部署所需代码如下:
services: qd: image: qdtoday/qd:latest container_name: qd_auto_sign restart: always ports: - "2573:80" # 左侧端口可自行替换 volumes: # 威联通映射目录,请根据实际路径修改 - /share/Container/qd/config:/qd/config - /share/Container/qd/log:/qd/log - /share/Container/qd/templates:/qd/templates environment: - TZ=Asia/Shanghai
首先,打开威联通NAS的Container Station应用,创建一个新的应用程序项目。

QD工具配置与使用步骤详解
部署完成后,在浏览器中输入NAS的IP地址及端口2573即可访问QD服务的管理界面。

点击界面右上角的「登录」按钮。首次使用需要注册账户,此处填写的邮箱地址无需真实有效,只需符合基本格式要求即可完成注册并登录。

登录成功后,界面中会显示「公共模版」选项,点击进入该模块。

系统会自动更新模板列表,等待片刻后所有可用模板将完整展示。用户可利用顶部的搜索功能快速定位所需模板,找到目标后点击左侧的「定阅」按钮。

以下图所示模板为例,演示具体操作流程。

点击「订阅」按钮后,页面下拉至底部,点击「保存」以确认订阅。

在弹出的配置窗口中,补充必要的账户信息,设置合适的签到频率,然后再次保存设置。

返回主页面后,即可看到已添加的订阅模板。

在对应模板条目下点击「新建」按钮,开始配置具体任务。

每个模板都附有详细备注,用户通常只需填写必填项目。演示模板仅需填写Domain、用户名和密码三项信息,填写完毕后点击提交即可。
微信公众号文章批量下载与排版导出全攻略:一站式工具详解
微信公众平台作为重要的内容发布渠道,许多运营者与研究者希望将发布的文章进行本地化保存或进行二次整理。本教程将详细介绍一款能够实现微信公众号文章批量下载、排版并导出为多种格式的在线工具。

wechat-article-exporter 是一款功能强大的在线工具,专门用于批量下载微信公众号文章。它不仅能够抓取文章正文,还支持导出文章的阅读量、评论数据等附属信息,为内容归档与分析提供了便利。

核心功能特性
该工具集成了多种实用功能,以满足不同场景下的需求:
- 公众号搜索:支持通过关键词搜索目标公众号。
- 多格式导出:支持将文章导出为 HTML、JSON、Excel、TXT、Markdown 以及 DOCX 格式。其中,HTML 格式会打包图片和样式文件,能够近乎 100% 地还原文章在公众号中的原始排版效果。
- 数据缓存:自动缓存已获取的文章列表数据,有效减少对平台接口的重复请求次数。
- 高级过滤:支持根据作者、文章标题、发布时间、原创标识以及所属的合集等多种条件对文章进行筛选。
- 合集下载:支持一键下载某个公众号下的整个文章合集。
- 多媒体支持:能够处理并下载文章内包含的图片分享消息与视频分享消息。
- 数据导出:除正文外,还可导出文章的评论、评论回复、阅读量、转发量等互动数据(此功能通常需要用户自行抓包获取必要的身份凭证信息,具体操作可查看项目指引)。
- 部署灵活:提供 Docker 镜像,支持通过 Docker 快速部署;同时也支持在 Cloudflare 等平台上进行部署。
- 开放接口:工具提供了开放的 API 接口,便于开发者进行集成和二次开发。
在线访问地址
工具的在线服务可通过以下网址访问:
https://down.mptext.top/dashboard/account
安装与部署指南
对于希望自行部署的用户,推荐使用 Docker Compose 方式,操作简便且易于管理。
Docker Compose 部署
首先,创建一个 docker-compose.yml 配置文件,内容如下:
services:
wechat-article-exporter:
image: ghcr.io/wechat-article/wechat-article-exporter:latest
container_name: wechat-article-exporter
ports:
- 3000:3000
volumes:
- ./data:/app/.data
restart: always
配置完成后,在终端中执行 docker-compose up -d 命令即可启动服务。
详细使用步骤
- 访问界面:服务启动后,在浏览器地址栏输入
http://你的NAS或服务器IP:3000即可访问工具的管理界面。

提示:若部署在局域网内的其他设备(如 NAS)上,从本地电脑直接访问 IP 地址可能会遇到网络问题。对于 Windows 用户,可以使用系统自带的 netsh 工具设置端口转发,将远程端口映射到本地。
无名杀Docker容器部署完整教程:安装、使用与联机指南
无名杀(Noname)是一款以经典三国杀为蓝本的开源卡牌游戏,采用HTML、CSS和JavaScript技术构建。游戏内置丰富多样的游戏模式和武将卡包,支持单机与联机玩法,并具备高度的功能扩展性。

Docker Compose配置与部署
通过Docker Compose可以快速部署无名杀游戏。以下是一个示例配置:
services:
noname:
image: hsiaoshun/noname:latest
container_name: noname
ports:
- 8081:80
- 8080:8080
restart: unless-stopped
参数说明(更多参数建议查阅官方文档):
- 端口80:用于Web界面访问。
- 端口8080:用于服务器联机功能。
游戏界面与操作指南
在浏览器中输入 http://NAS的IP:8081 即可访问游戏主界面。

首次启动时,点击“确定”进入游戏。

继续点击“确定”确认设置。

正式进入游戏界面后,系统会提供新手引导,建议仔细查看。

游戏界面适配移动端布局,操作便捷。

点击界面下方的文字标签,可以获取相关功能介绍。

完成新手引导后,即可开始自由游戏。

游戏提供多种功能选项,允许玩家自定义设置。

由于游戏基于三国杀玩法,这里不深入展开规则介绍。

游戏内置多种模式,以下重点说明联机功能(注意:测试中遇到无法进入房间的问题)。

在联机界面输入 NAS的IP:8080 ,无需添加 http 或 https 前缀。

点击“连接”按钮尝试接入服务器。

如果当前没有可用房间,可以点击取消返回。

点击“创建房间”以建立新的游戏房间。

创建成功后,系统会生成房间分享信息,联机地址需包含端口号。
无名杀-联机-国战-1/4
无名玩家邀请你加入11343892485房间
联机地址:192.168.31.90:8080
请先通过游戏内菜单-开始-联机中启用“读取邀请链接”选项

打开另一个浏览器页面进行测试,同样选择联机功能。

输入之前分享的房间链接。

理论上此时应能进入房间,但测试中遇到连接失败的情况。

部署总结与评价
测试过程中联机功能未能正常使用,起初怀疑是配置问题,但查阅项目issues后发现其他用户也有类似反馈。无名杀作为一款卡牌游戏,玩法丰富,部署简单,适合有兴趣的玩家自行尝试。
综合推荐:⭐⭐⭐(支持多种游戏模式,即开即玩)