PasteSpiderFile文件同步管理端使用说明(V24.6.21.1)

PasteSpider作为一款适合开发人员的部署管理工具,特意针对开发人员的日常情况做了一个PasteSpiderFile客户端,用于windows上的开发人员迅速的更新发布自己的最新代码到服务器上!
虽然PasteSpider也支持svn/git的源码拉取,自动编译,发布升级等,
使用PasteSpiderFile你会发觉这个升级更新会显得更加自然些!
而且有些时候,你的项目生成成功了,未必能够发布成功!!!
在这里插入图片描述
作为PasteSpider的一个重要组成部分,PasteSpiderFile作为服务文件同步管理端,目前只适配了windows客户端,支持windows7以上系统!
上图作为最新版本的客户端,从界面上可以看到大致包含2个部分

1.项目,服务信息部分,作为查看使用

如果你的服务在项目查看中找不到?那需要使用最高账号为当前登陆账号授权!注意为一个账号授权服务,需要区分是哪个环境!

2.文件同步部分(为项目的服务执行差量文件同步的工作)

PasteSpider的项目文件的同步采用文件md5校验,也就是基于文件名和文件的md5码进行判断,如果和服务端的不一致,认定客户端的为新版本
(这个有可能误判,比如张三更新了一个版本,李四的版本还是旧的,这个时候李四进行文件对比会发觉发现自己和服务端不一样的都被标为需要升级的),这个问题需要你们自行版本控制哈!

配置登陆

点击上方左侧“①登陆系统”,打开如下图:
在这里插入图片描述
打开后会获得如上界面,第一行输入你自己的PasteSpider的访问地址,注意需要http开头,/结尾!
然后就是自己的账号密码了,默认账号是admin@spider.com 密码是123456,这个要看你Web端是否修改了,需要一致!
登陆后的token过期时间是8小时!也就是8小时后要重新登陆,重新登陆只要输入图形验证码然后点击登陆即可!

选择服务

登陆后,那就是选择一个服务(某个项目下的某一个服务),为这个服务执行差量同步!
点击上方左侧的“②选择项目”,打开大致如下,这个内容要看你PasteSpider里面的配置是啥:

在这里插入图片描述
一开始上面的路径应该都是空白的,表示的是这个服务对应的在你本机的路径是哪个,也就是你本机的哪个路径作为对应服务的文件!

点击对应后面的配置,看到如下图:
在这里插入图片描述
第一行就是上面说的服务的对应的文件夹,注意是内容的根目录!
第二行的“前置命令”这个就有意思了,如果你在同步前要进行文件的复制,文件修改等,你就可以在这个“前置命令”上实现
1.命令之间使用英文的;隔开
2.命令之间没有上下级状态的关联,所以涉及路径等需要填写全路径
3.这里的命令执行不会有任何提示,所以你需要自行先在外面测试,测试命令是否可用
4.基于3,所以你的命令不能有那种交互的存在,比如问你是否确定覆盖啥的!

执行同步

以上配置好了后,双击你要同步的那行服务!这个时候会转到首页,进行文件对比!
在这里插入图片描述
请等待动画完成,如果是第一次会慢点!
在这里插入图片描述
如上所示,数据处理完成后,会在列表显示有变动的文件,下方会显示变动的数量!
这个结果的结果和项目的“同步过滤”的配置有关!
确定文件无误后,点击上方的“③同步文件”,同样的等待同步结果!
在这里插入图片描述

同步失败

如果同步失败,哪怕一个,会有对话框弹出告知,一般涉及后端需要构建的,同步一个,那也是会启动失败的,所以同步必须全部正确,否则不会继续下一步!!!(这个在“一键发布”的时候尤其重要!)

同步失败一般有几种可能性!
1.文件被占用了,这个可能是有其他程序独占了这个文件,导致PasteSpiderFile读取失败
2.有可能是nginx(假设你的PasteSpider的服务代理是使用这个实现的)的
client_max_body_size 20M;
client_body_buffer_size 20M;
没有配置,这2个默认是1M,所以记得针对你的服务的文件做限定!
3.有可能是在同步过程中登陆的密钥失败了,这个就是刚好卡点在8小时的那个点上!重新登陆后重新对比,重新同步

部署升级

同步完成后,可以点击上方的“构建升级”,表示为这个选定的服务,执行升级这个动作,点击后,会打开一个网页,其实就是PasteSpider的Web端,打开如下:
在这里插入图片描述
注意这个服务需要配置的文件类型为非静态文件模式,也就是需要docker build镜像,然后启动容器的那种!这个服务需要绑定了环境和绑定了服务器(这个在创建项目的服务的时候指定,后续也可以在服务的环境列表中进行添加!)
确认无误后,点击上图的“构建并升级”,表示基于当前服务端的服务的文件,执行docker build和docker run命令对现有的服务进行升级(这里牵扯到了旧的停止,nginx更新,版本删除等动作,具体的可以查看任务的详细!)

等待对应的WebHook的结果通知,一个服务的升级就完成了!
在这里插入图片描述

注意事项

差量规则

系统是如何判定服务中的哪些文件要升级的?
PasteSpider的文件同步(无论是服务的“文件更新”还是PasteSpiderFile的文件同步),采用的都是文件md5码判断文件是否要升级,如果不一致就判断为需要更新!
在这里插入图片描述
所以问题来了,如果多个人更新,有可能出现旧版本覆盖的问题,这个问题需要你们自行解决哈!
可以通过svn/git等源码管理,文件同步后在执行这个升级操作!

找不到服务

有可能你会遇到在PasteSpiderFile客户端上的项目服务列表找不到需要的服务的,这个情况一般是以下问题
1.你是否有多台服务器,而且是独立部署PasteSpider的,这样他们是隔离的,需要登陆那边切换到对应的服务去
2.你这个账号不是最高权限账号,需要为这个账号授予对应服务的权限!
3.有可能你的登陆密钥过期了,重新登陆即可!

同步过滤

开发中,往往很多文件比较特殊,比如.net的appsettings.json,这个配置文件,我们希望每次更新都不需要更新他!
你可以到Web端,找到这个服务,后面的“同步过滤”
在这里插入图片描述
点击后,会显示这个服务的同步过滤的配置,大致如下,如果没有配置默认是空!
在这里插入图片描述
如上图,我的这个服务表示/wwwroot/文件夹的内容不做更新,也就是忽略他,appsettings.json这个文件在每次更新的时候也忽略他!
点击编辑,把状态关闭然后点击保存,就是不使用这条规则!
在这里插入图片描述
新增或者编辑的时候,如上图!
注意所有文件或者文件夹都是/开头的,你就把/当前服务根目录就行!如果是配置文件夹那么一定是/结尾!其实这个路径的写法是linux的!

下方的**“是否忽略”**请注意,如果是打勾,表示同步的时候忽略这个对象的对比,直接就判定为不需要同步,如果取消打勾,表示,**每次必须同步更新这个对象!!!**
上图中还有一个选项,账号ID,这个是指登陆者,也就是你可以为张三配置忽略更新文件夹/wap/,而其他人更新的适合不忽略这个文件夹!!!

PasteSpider作为适合开发者使用的容器管理工具,其实主要体现就在这个PasteSpiderFile的客户端上,因为他实现了“一键发布”,实现了简单点击即可为服务端的对应的项目执行发布!

客户端获取

你可以查看我发布的资源,从资源处下载
也可以添加QQ群(296245685),从QQ群的文件下载最新版本!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/859953.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【自然语言处理系列】安装nltk_data和punkt库(亲测有效)

目录 一、下载nltk_data-gh-pages.zip数据文件 二、将nltk_data文件夹移到对应的目录 三、测试 四、成功调用punkt库 问题: 解决方案: 在使用自然语言处理库nltk时,许多初学者会遇到“nltk.download(punkt)”无法正常下载的问题。本…

Android Media Framework(七)MediaCodecService

Android引入Treble架构后,OpenMAX框架以HIDL Service的形式为System分区提供服务,本文将探讨该服务是如何启动,服务提供了什么内容,以及服务是如何被应用层所使用的。 1 概述 在Android的Treble架构中,为了确保系统的…

面试经典150题

打家劫舍 class Solution { public:int rob(vector<int>& nums) {int n nums.size();if(n 1){return nums[0];}vector<int> dp(n, 0);dp[0] nums[0];//有一间房可以偷//有两间房可以偷if(nums[1] > nums[0]){dp[1] nums[1];}else{dp[1] nums[0];}for …

react18 实现具名插槽

效果预览 技术要点 当父组件给子组件传递的 JSX 超过一个标签时&#xff0c;子组件接收到的 children 是一个数组&#xff0c;通过解析数组中各 JSX 的属性 slot &#xff0c;即可实现具名插槽的分发&#xff01; 代码实现 Father.jsx import Child from "./Child";…

【D3.js in Action 3 精译】第一部分 D3.js 基础知识

第一部分 D3.js 基础知识 欢迎来到 D3.js 的世界&#xff01;可能您已经迫不及待想要构建令人惊叹的数据可视化项目了。我们保证&#xff0c;这一目标很快就能达成&#xff01;但首先&#xff0c;我们必须确保您已经掌握了 D3.js 的基础知识。这一部分提到的概念将会在您后续的…

探秘神经网络激活函数:Sigmoid、Tanh和ReLU,解析非线性激活函数的神奇之处

引言 在神经网络中&#xff0c;激活函数扮演着至关重要的角色。它们赋予神经网络非线性的能力&#xff0c;使得网络具备学习和表示复杂函数关系的能力。本文将详细解析三种常见的激活函数&#xff1a;Sigmoid、Tanh和ReLU&#xff0c;揭开它们在神经网络中的奥秘。无论你是初学…

【十一】【QT开发应用】模拟腾讯会议登录界面设计UI

ui 加入会议的样式表 QPushButton { /* 前景色 */ color:#0054E6; /* 背景色 */ background-color:rgb(255,255,255); /* 边框风格 */ border-style:outset; /* 边框宽度 */ border-width:0.5px; /* 边框颜色 */ border-color:gray; /* 边框倒角 */ border-radius…

日常-----最爱的人

今日话题 大家好嗷&#xff0c;今天聊的技术可比之前的重要的多啊&#xff0c;哼哼&#xff0c;也不是今天&#xff0c;大家像我看齐嗷&#xff0c;我宣布个事情&#xff01;&#xff01;&#xff01; 于2024年6月21日晚上&#xff0c;本人遇到了这一生最爱的人 嘿嘿 这种事…

微信小程序 引入MiniProgram Design失败

这tm MiniProgramDesign 是我用过最垃圾的框架没有之一 我按照官网的指示安装居然能安装不成功,牛! 这里说明我是用js开发的 到以上步骤没有报错什么都没有,然后在引入组件的时候报错 Component is not found in path “./miniprogram _npm/vant/weapp/button/index” (using…

CSS阴影优化气泡框样式

<body> <div class"pop">气泡框</div> </body>body{display: flex;justify-content: center;align-items: center;height: 100% } .pop{display: flex;justify-content: center;align-items: center;background: #409eff;width: 150px;heigh…

03-Shell编程之循环语句与函数

目录 3.1 for循环语句 3.1.1for语句的结构 3.1.2 for语句应用实例 3.2 使用whlie循环语句 1.打印数字1到5 3.3 使用until循环语句 3.3.1until的实例 1.打印数字1到5&#xff08;使用until的逆向逻辑&#xff09; 2.等待用户输入特定内容 3.4 函数 3.4.1Shell函数的基…

自学C语言-10

第10章 指针 指针是C语言的一个重要组成部分&#xff0c;是C语言的核心、精髓所在。用好指针&#xff0c;可以在C语言开发中起到事半功倍的效果。一方面&#xff0c;可以提高程序的编译效率、执行速度&#xff0c;以及动态存储分配&#xff1b;另一方面&#xff0c;可使程序更加…

playwright录制脚本原理

Paywright录制工具UI 在上一篇博客中介绍了如何从0构建一款具备录制UI测试的小工具。此篇博客将从源码层面上梳理playwright录制原理。当打开playwright vscode插件时&#xff0c;点击录制按钮&#xff0c;会开启一个新浏览器&#xff0c;如下图所示&#xff0c;在新开浏览器页…

Hive基础知识(十八):Hive 函数的使用

1. 系统内置函数 1&#xff09;查看系统自带的函数 hive (hive3)> show functions; Time taken: 0.085 seconds, Fetched: 289 row(s) 2&#xff09;显示自带的函数的用法 hive (hive3)> desc function upper; OK tab_name upper(str)- Returns str with all characters…

“了解MySQL中的enum枚举数据类型“

目录 # 开篇 1. 创建包含枚举类型的表 2. 插入枚举类型的数据 3. 查询包含枚举类型的表 4. 更新枚举类型的数据 5. 使用枚举类型的好处 注意事项 示例总结 附加 # 开篇 在数据库中&#xff0c;枚举&#xff08;ENUM&#xff09;是一种数据类型&#xff0c;用于存储一组…

即插即用篇 | 手把手教你 YOLOv10 添加注意力机制 | 20+ 种全打通!

YOLOv10 添加注意力机制 ! 视频教程地址-哔哩哔哩 文章目录 YOLOv10 添加注意力机制 !注意力机制介绍注意力机制的分类1. SE 注意力模块1.1 原理1.2 代码2. CBAM 注意力模块2.1 原理2.2 代码3. ECA 注意力模块3.1 原理3.2 代码4. CA 注意力模块4.1 原理4.2 代码5. 添加方式�…

构建开源多模态RAG系统

在这个新的冒险中&#xff0c;我们将深入研究使用开源大型语言多模态&#xff08;LLMM&#xff09;构建检索增强型生成&#xff08;RAG&#xff09;系统的过程。值得注意的是&#xff0c;我们的重点是在不依赖LangChain或Llama索引的情况下实现这一点&#xff1b;相反&#xff…

LabVIEW在机器人研究所中的应用

机器人研究所致力于机器人技术的研究与开发&#xff0c;涵盖工业机器人、服务机器人、医疗机器人等多个领域。研究所需要一个高效、灵活的实验控制和数据采集系统&#xff0c;以进行复杂的机器人实验&#xff0c;并对实验数据进行实时处理和分析。 项目需求 实时控制与监控&am…

NC--介绍-未加密加密后-流量抓包对比

免责声明:本节仅做技术交流与学习... 目录 介绍: 用法: 未加密--流量抓包 加密: 攻击端 靶机 抓包分析: 介绍: nc 是一个Linux环境下常用的工具命令&#xff0c;可以用来帮助开发者查询和解决网路问题&#xff0c;通常被认为是 NetCat 工具的缩写&#xff0c;在网络工具…

Hi3861 OpenHarmony嵌入式应用入门--轮询按键

本篇介绍使用轮询方式读取gpio状态来判断按键状态。 原理图如下 GPIO API API名称 说明 hi_u32 hi_gpio_init(hi_void); GPIO模块初始化 hi_u32 hi_io_set_pull(hi_io_name id, hi_io_pull val); 设置某个IO上下拉功能。 hi_u32 hi_gpio_set_dir(hi_gpio_idx id, hi_gpi…