PasteSpider 的早期版本受到了许多用户的喜爱,同时也收到了一些反馈,特别是关于如何在非容器环境下部署的需求,例如 Linux 的 systemd 和 Windows 的 IIS。这促使我们推出了 V5 版本,以满足更多场景的需求。
- V2 版本:仅支持将项目部署到 Linux 服务器上,以 Docker 或 Podman 的形式运行。
- V5 版本:支持多种运行方式,包括 Podman、Docker、Systemd、Service 和 IIS,能够在 Windows 和 Linux 上运行。
运行差异
在 V2 版本中,PasteSpider 通过 SSH 与服务器通信,属于远程模式。而 V5 版本不仅保留了 SSH 模式,还新增了本地模式,通过 sh
或 cmd
脚本与服务器交互。
对于集群部署,V2 版本只需确保服务器连通即可,而 V5 版本要求 PasteSpider 必须部署在宿主服务器上,以便通过命令方式与服务器交互。
主要改进
- 代码重构:由于运行方式的改变,超过 70% 的逻辑代码被重写。
- PasteCluster 优化:重新优化了 PasteCluster 的配置逻辑,使其更依赖于 PasteSpider 的配置。PasteCluster 是一个集群组件,旨在帮助项目快速支持集群模式。
- Docker Registry 修复:修复了私有仓库创建失败的问题,并在新版本中进行了多次测试,同时引入了手动模式。
- 安装方式扩展:安装方式从一种扩展为三种,支持 Linux 的 Systemd 和 Windows 的 Service。
更新摘要
- 容器同步:更新容器所属项目、服务等信息。
- 容器操作修复:修复了容器的重启、停止、删除逻辑,改为任务模式,兼容系统内外的站点容器。
- 容器命名规则调整:统一为
model.code_service.id_app.id_project.id_model.id
。 - IIS 动态表单支持:支持自定义更新 IIS 内容。
- 日志系统改进:重新划分了
warning
和 error
的范畴,默认正常执行的日志记录为 information
。 - Windows Server 支持:优化了 Windows Server 的配置和启动脚本。
- 文档机制升级:采用新的文档机制 PasteDocument,后续文档将统一迁移。
- Systemd 支持:支持在 Linux 上以 Systemd 方式运行,容器可以使用 Podman 或 Docker。
- 任务异常修复:修复了任务异常时状态未更新的问题。
- 权限列表模块改进:使用 JSON 导入模式替代代码模式,便于初始化和调整。
新增功能
- 文件同步:支持多服务器之间的文件同步,包括差异文件压缩、下载、校验和重试机制。
- 集群节点管理:支持动态编辑集群节点信息,并映射到
appsettings.json
中。 - 任务中心优化:任务中心支持通过 Cluster 中转到目标服务器执行任务,任务完成后通过 WebSocket 下发结果。
- 服务监听改进:修复了服务监听状态信息不同步的问题。
- 种子数据管理:支持导入、导出和恢复默认种子数据,需 root 权限。
其他改进
- 容器站点报表:添加了更多数据指标,如秒链接、秒读取、连接数等。
- IIS 日志读取:支持通过
journalctl
查看 Systemd 日志。 - 服务名称动态化:支持动态配置服务名称和程序名称,便于 Systemd 和 IIS 部署。
- 集群消息机制优化:修改了 Cluster 的消息机制,添加了
linux_id
和 cluster_name
作为目标节点信息。 - 文件同步任务:支持主服务端检测其他服务器的文件同步需求,并创建相应的任务。
问题修复
- 多服务器升级问题:修复了多服务器模式下全量升级的问题。
- 容器名称规则调整:容器名称规则调整为
{model.code}_{service.id}_{app.id}_{project.id}_{model.id}_{pro.code}_{ser.code}
,便于识别和管理。 - 镜像管理:修复了镜像重复创建和旧版本镜像删除的问题。
- 服务扩容逻辑修复:修复了服务扩容和缩减的任务逻辑,确保按服务器划分执行。
未来计划
- 多模式运行支持:支持一份代码在 Docker、Systemd 等多种模式下运行。
- HTTPS 支持:优化网站绑定 HTTPS 的流程,支持证书选择。
- PasteForm 多层级支持:支持类似
info__name
的多层级表单查询。 - 集群审计日志优化:禁用不必要的集群审计日志,减少日志量。
测试与验证
- Windows Docker 测试:已完成 Windows 上的 Docker 测试,私有仓库测试待完成。
- Ubuntu Docker/Podman 测试:待测试 Ubuntu 上的 Docker 和 Podman 运行情况。
- 多仓库配置测试:测试一个系统多个仓库的情况,确保服务器和仓库配置的灵活性。
其他优化
- 配置文件合并:计划合并
groupname
和 currentname
配置,简化配置管理。 - 备份功能:支持项目、服务、服务器的半自动化备份,导出后手动按需录入。
- 容器状态显示:在容器站点列表中显示当前内存和 CPU 使用情况。
更多关于 PasteSpider 的详细信息,请访问专题页面:
点我前往 PasteSpider 专题了解情况