PasteSpider之部署实际案例一则

news2024/12/27 3:44:49

        本帖主要是介绍使用PasteSpider部署一个项目的过程,不一定会把所有问题都概括在内,但是至少是一个项目部署的完整流程和说明!

        我们以PasteCode的网站作为一个项目为例子,绑定的域名为https://www.pastecode.cn/,项目包含了api端和web端,实际还有manage端的,只不过我把她和web合并了,一个文件夹的事情。

        按照我的项目实际情况,路由情况如下

路径服务说明
/page/web前端页面
/upload/upload上传路径
/lib/web前端资料库
/static/web前端静态资源
/api后端接口

立项目

        在菜单 “项目信息”-“项目列表”-新增,如下:

        如何划定你要部署的系统需要划分几个项目?一整个完整的系统,你需要用几个域名,用几个就创建几个项目,在本文中只要一个域名即可,所以我只要创建一个项目。

立服务

        基于上方的路由信息,我只要拆分2个服务,一个是api,一个是web,至于uplaod那个只是使用目录映射即可,也就是docker/podman的-v命令。

         在菜单“项目信息”-“服务列表”,新增如下填写:

         注意上图中的红色框的必填项目部分和,文件模式(由于API,我采用的是开发者电脑发布到文件夹后,然后使用文件同步器上传到服务器,然后在服务器构建成镜像包),在其他参数中我写入-v /webupload/soft/upload:/app/upload 这是由于我把上传目录映射出来了。这个按照自己的要求去实现。

        由于我采用的是动态的upstream,也就是这个api服务每次发布后,更新对应的路由配置信息,所以我没有勾选端口映射。如果你这个服务要给其他服务器路由,则需要勾选端口映射。

        至于最后面的环境信息,由于我只是一个人编写,也没啥必要测试的,所以只勾选了一个默认环境.

上载API发布文件

        打开VS,右键项目解决方案,我的如下图配置:

发布后,打开目标位置的文件夹(这里标记为api服务的发布文件夹),要检查文件夹是否有Dockerfile文件,我的Dockerfile如下

打开SpiderSyncFile同步软件,

 

如上图操作,先登陆后,打开选择项目,这个时候应该可以看到我上图中的红色那一行,点击配置输入上面说的(api服务的发布文件夹)的路径。然后双击这一行,软件会执行查良化对比。然后点击

“--同步文件--”。等待操作完成后,点击“打开去构建”,

 

         这个时候回到PasteSpider的第一个菜单中“运行记录”-“工作列表”,应该可以看到任务在运行了。

点击后面的详细,会看到这个任务的实际步骤和执行结果!

        这个时候如果你到服务器上,执行docker/podman ps或者docker/podman images应该是可以看到运行的容器列表和镜像列表。

配置前端

        由上方的项目划分,我们还有一个服务需要配置,就是web服务,这个是静态的,所以有如下新建信息:

注意看上面的几个地方。

        打开文件同步软件,项目中选择贴代码-web的部分,同理的,把你开发电脑的前端文件夹的路径写入到配置中,然后双击项目。

点击同步后等待文件上传完成即可,静态文件不需要构建!

路由配置

        上面操作完成后,就确定了我们已经把贴代码的前端和接口都上传到服务器上了,甚至api的这个服务我们已经启动了容器了,这个时候我们需要配置下nginx的路由配置文件(PasteSpider的路由使用Nginx实现的,也就是所在服务器需要正确安装nginx)。

        在菜单“项目信息”-“路由列表”,点击新增,如下图:

 

如上图,貌似除了文件说明没啥用,其他都是关键点,特别是文件内容(路由配置模板)。点击“检查”后查看生成的路由配置是否正确,正确的话保存。

        以上操作后,理论上整个流程就完成了。需要启用,还需要再次构建一次api服务。

        打开菜单“项目信息”-“项目环境”,找到

等待“工作列表”的任务完成后,你可以去配置的服务器上的nginx/文件夹下,看下是否生成了你配置的nginx的文件。

后续升级

        后续,如果是前端文件,我们只需要打开同步软件执行以下操作即可

 

 如果是API部分,比如我的贴代码的api服务,则如下:

以上就是使用PasteSpider部署一个项目的案例,如果说你要配置其他的,比如支持GIT/SVN的自动部署,不同环境的部署隔离,部署到不同服务器,部署多个容器等,可以查看https://www.pastecode.cn/ 了解更多内容!

        也可以加入我们的QQ群了解更多内容!296245685

        

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

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

相关文章

ldap 组织结构如何转成多叉树?

工作中,ldap 服务器的对接,可以能会涉及到同步组织结构,认证,认证后处理等等,最近认证还不是我想写的刚需,继续来看看对于组织结构的想法 例如同步 AD 域的组织结构,或者是 ldap 协议的其他产品…

「计算机控制系统」2. 采样与数据保持

计算机控制系统中的信号 理想采样过程的数学描述 信号的恢复与重构 文章目录计算机控制系统中的信号基础知识A/D中的信号D/A中的信号理想采样过程的数学描述采样过程的描述理想采样信号的描述Shannon采样定理信号的恢复与重构Shannon重构法信号保持重构法计算机控制系统中的信号…

Java属性文件编码:处理非西欧语言字符的指南

Java属性文件是一种轻量级的配置文件格式,用于在Java应用程序中存储键值对数据。在Java中,Properties类提供了一种方便的方式来读取和写入属性文件。 在Java中,属性文件通常使用ISO-8859-1字符集编码。这意味着如果您希望在属性文件中使用非…

中科图新BIM+GIS数字化设计施工管理解决方案

一、引言: 公路项目对施工质量和风险控制要求高,但涉及专业、队伍、机械等众多因素,导致施工质量与安全控制困难。必须提前应对并做好过程中的管控,信息化系统可支持记录和管理数据。 二、中科图新BIMGIS智慧施工管理平台 中科图…

docker容器的相关环境及创建镜像1

一、容器管理工具介绍 LXC 2008 是第一套完整的容器管理解决方案 不需要任何补丁直接运行在linux内核之上管理容器。创建容器慢,不方便移植 Docker 是在LXC基础上发展起来的。拥有一套容器管理生态系统 生态系统包含︰容器镜像、注册表、RESTFUL API及命令行操作界…

Python算法设计 - McCarthy 91

目录一、什么是 McCarthy 91二、有什么用?三、Python算法实现四、作者Info一、什么是 McCarthy 91 McCarthy 91 是一个递归的函数表达式如下 函数的意思是当输入一个大于 100 的数字 n 时返回 n-10,而当输入一个小于等于101的数字 n 时递归的对 n 进行…

QT之widget窗口标题与项目构建目标位置修改

文章目录widget窗口标题修改方法一,直接通过UI界面修改方法二,通过代码修改结果展示,选择其中一种方法即可构建项目生成文件目标位置修改1. 首先选择——>项目,如图所示:2.打开后选择构建设置——>编辑构建位置&…

【VScode】手把手教你如何搭建C/C++开发环境

目录 1.VScode是什么 2.VScode的下载和安装 安装中文插件 3.VScode配置C/C开发环境 3.1 下载MinGW-w64 编译器套件 3.2 配置MinGW-w64 3.3 安装C/C插件 4.在VScode上编写C语言代码并编译成功 4.1打开文件夹 4.2 新建C语言文件,编写C语言代码 4.3设置C/…

vue3项目中使用pinia

vuex 4pinia 小菠萝 vuex和之前vue2使用一致 1.import { createStore } from vuex 引入文件不同vue3组件setup写法vuex提供了hook //组件中操作store import { useStore } from vuex //提交mutations 进行修改 store.commit(increment), //dispatch 触发action 同步或者异步提交…

【C】Process Control

系列连载 【python / C / C】 参考 《C语言程序设计(第四版)谭浩强》【C语言】C语言视频教程《郝斌 C 语言自学教程》 文章目录1 什么是流程控制2 流程控制的分类2.1 顺序执行2.2 选择执行2.3 循环执行2.3.1 for2.3.2 while2.3.3 do...while2.3.4 swi…

[ 汇编语言 (一) ] —— 踩着硬件的鼓点,掌握计算机的精髓

🙌秋名山码民的主页 😂一个打过一年半的oier,写过一年多的Java,现在致力于学习iot应用的普通本科生 🎉欢迎关注🔎点赞👍收藏⭐️留言📝 🙏作者水平有限,如发现…

数据库系统工程师——第二章 程序语言基础知识

文章目录📂 第二章、程序语言基础知识 📁 2.1 程序语言概述 📖 2.1.1 程序语言的基本概念 📖 2.1.2 程序语言的基本成分 📁 2.2 程序语言翻译基础 📖 2.2.1 汇编程序基本原理 📖 2.2.2 编译程序…

算法之归并排序

文章目录一、归并排序(递归版)二、归并排序(非递归版)一、归并排序(递归版) 归并排序思想:将数组划分为两个区间,左区间,右区间 然后对这两个区间内容进行排序 &#xff…

一文讲懂C#、ASP.NET、ASP.NET MVC、ASP.NET web form、asp.net core mvc的区别

微软的命名很糟糕。技术上有两个框架:ASP.NET和ASP.NET Core,它们分别基于.NET Framework和.NET Core构建。 当Microsoft首次尝试创建一个遵循MVC模式的“现代”Web应用程序平台时,它将这个新平台称为“ASP.NET MVC”,以区别于以前…

【性能优化】cocoscreator 共享节点-动效复用方案

前言 迷雾散尽,露出了古朴庄严的森林。古老的铁杉,在头顶编成绿色穹顶。 阳光在树叶间破碎成金色顶棚。从树干间远眺,远处的森林渐渐隐去。 用几句话就能描述一片巨大的森林,但是在实时游戏中做这件事就完全是另外一件事了。 当屏…

[数据结构-C语言] 算法的时间复杂度

目录 1.算法的复杂度 2.时间复杂度 2.1 时间复杂度的概念 2.2 大O的渐进表示法 3、常见时间复杂度计算举例 3.1 冒泡排序 3.2 二分查找 3.3 阶乘递归 3.4 斐波那契数列 1.算法的复杂度 算法在编写成可执行程序后,运行时需要耗费时间资源和空间(内存)资源 …

PS学习记录——自动选择的【图层】/【组】模式说明

PS中,【移动工具】状态下,上方的工具栏有个【自动选择功能】,用于移动图像 自动选择下有【图层】、【组】两种选项 1、自动选择-【图层】 图层模式下,自动选择可以任意移动选中的图像图层,想移动哪个就移动哪个 即便不…

43.CSS grid布局

本节我们学习的初始代码如下&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta http-equiv"X-UA-Compatible" content"IEedge" /><meta name"viewport" …

110页智慧农业解决方案(农业信息化解决方案)(ppt可编辑)

本资料来源公开网络&#xff0c;仅供个人学习&#xff0c;请勿商用&#xff0c;如有侵权请联系删除。 第一部分 智慧农业概述 智慧农业以农业资源为基础、市场为导向、效益为中心、产业化为抓手&#xff0c;面向农业管理部门、农技推广部门、农业企业、农业园区和基地、农业专家…

【C】Pointer

系列连载 【python / C / C】 参考 《C语言程序设计&#xff08;第四版&#xff09;谭浩强》【C语言】C语言视频教程《郝斌 C 语言自学教程》 文章目录一、指针的重要性二、指针的定义三、指针的分类基本类型指针指针和一维数组指针和函数指针和结构体多级指针int * p;// p …