jenkins上发布项目后将文件推送到另一台服务器build镜像
1、配置jenkins
1)主页面点击manage jenkins
2) 选择SystemConfiguration
3) 配置服务器信息,注意密码一定要输入对,还有端口有,一般是默认的22端口,但有的不是默认的22端口,配置好后记得点一下test看是否连接成功
4)配置插件:publish-over-ssh、MSBuild Plugin、.NET SDK Support、Localization: Chinese (Simplified)
如何安装插件及安装报错请参照我另我篇博客:
2、jenkins写项目的自动发布脚本
如果你jenkins是部署在windows上,一定要在构建的部分选择windows batch command
命令主要作如下的几件事件:
1)、删除原来的发布目录
2)、定位到web项目后发布项目
3)、判断压缩文件是否存在,如果存在则删除
4)、压缩发布目录
dotnet --version
rd /s /q Oms-Microservice\applications\Jzt.Spd.Web\bin\Release\net5.0\publish
cd Oms-Microservice\applications\Jzt.Oms.Web
dotnet clean dotnet publish -c:Release echo '编译完成,开始压缩文件' cd bin\Release\net5.0 if exist "omsweb-dev.zip" (del omsweb-dev.zip) E:\7z\7-Zip\7z.exe a -tzip omsweb-dev.zip publish echo '压缩完成'
注意:如果打包用的服务器没有外网,是自己项目中的包,那publish这样写:dotnet publish --source D:\apache-tomcat-9.0.80\webapps\jenkins\workspace\spd-web\nugetpackge -c:Release
其中,--source参数后的文件为工作路径
选择Send build artifacts over SSH ,将发布目录推送到指定的服务器,并执行build 成docker 镜像的脚本
注意:SSH Publishers在高级后选中如下的选项
注意:如果连接服务器时间不够请在Transfers高级后改为300000,默认是120000
在另一台linux上要执行的脚本如下;
主要是登录到镜像仓库,build镜像,并将镜像上传到镜像仓库
常见问题:
1、Filename too long
解决方案一:
直接在jenkins服务器上右键---->git bash here --->执行命令:git config --global core.longpaths true
解决方案二:
1)安装Environment Injector插件
2)jenkins新建item选择自由风格项目
3)选择Prepare an environment for the run
4)勾选 Keep Jenkins Environment Variables 和 Keep Jenkins Build Variables
5)Script Content框内加入: git config --global core.longpaths true
jenkins上发布项目后将文件推送到另一台服务器build镜像的更多相关文章
- 在IIS上发布项目后浏览时报的错:Unable to make the session state request to the session state server
错误描述: Unable to make the session state request to the session state server. Please ensure that the A ...
- 【Git】在GitHub或OSChina上新建项目后,如何在本地第一次push代码到服务器
场景1:将本地代码push到远程仓库上的master主分支 #初始化git,执行init命令后,默认新建本地分支master git init #关联远程仓库 git remote add origi ...
- Ionic项目中使用极光推送
Ionic项目中使用极光推送-android 对于Ionic项目中使用消息推送服务,Ionic官方提供了ngCordova项目,这个里面的提供了用angularjs封装好的消息推送服务(官方文档) ...
- Ionic项目中使用极光推送-android
对于Ionic项目中使用消息推送服务,Ionic官方提供了ngCordova项目,这个里面的提供了用angularjs封装好的消息推送服务(官方文档),使用的是GitHub上的 PushPlugin ...
- 将本地文件推送到Gitee仓库
完整的步骤 1.在gitee中创建仓库 2.下载.安装git 3.推送文件到gitee 推送文件到gitee 1.在要上传的文件夹空白处,点击右键,选择 git bash here 2.输入 git ...
- Git将一个项目同时从本地推送到GitHub和Gitee
前言 博主是根据自己的情况写这篇博文的,每个人遇到的情况和需求可能不一样哈,所以初始的步骤也不一定一致,但是同时推送到Github和Gitee的步骤都会是一致滴! Gitee拉取Github仓库 直接 ...
- [转]linux将一个服务器上的文件或者文件夹复制到另一台服务器上
本文转载自<linux 将一个服务器上的文件或者文件夹复制到另一台服务器上>,有时间实践一把 使用scp将一个Linux系统中的文件或文件夹复制到另一台Linux服务器上 复制文件或文件夹 ...
- jenkins部署java项目,脚本文件放在远程仓库中 和jar一起打包(六)
jenkins部署java项目到远程linux上,脚本文件和项目一起上传到gogs上,直接执行gogs上的脚本文件来执行项目 (1)新建maven项目 pom.xml的配置 <project x ...
- MyEclipse 8.5整合Git,并在Github上发布项目【转】
最近Git火得如日中天,而且速度体验和团队模式都很不错.手头正好有个学生实训项目,时间紧任务重,而且学校内网管理太紧,所以就想借助于Internet的分布式开发,因此想到了Github. 经过一天的调 ...
- MyEclipse 8.5整合Git,并在Github上发布项目(转)
下载Eclipse的git插件——EGit.下载网址http://download.eclipse.org/egit/updates-1.3/org.eclipse.egit-updatesite-1 ...
随机推荐
- linux 只查看 java 进程
top $(ps -e | grep java | awk '{print $1}' | sed 's/^/-p/')
- OpenShift image registry 访问镜像
1. OpenShift 内部 image registry Openshift 自带内部 image registry,可通过 podman 实现 image 的 pull 和 push 操作. 对 ...
- java 服务 JVM 参数设置配置
本文为博主原创,转载请注明出处: 常用JVM 配置参数: -Xmx:表示java虚拟机堆区内存可被分配的最大上限,通常为操作系统可用内存的1/4大小. -Xms:表示java虚拟机堆区内存初始内存分配 ...
- SpringCloud集成Seata并使用Nacos做注册中心与配置中心
本文为博主原创,未经允许不得转载: 目录: 1. 下载并启动Seata Server,并指定nacos作为配置中心和注册中心 2. 同步seata server的配置到nacos 3. 启动Seata ...
- Linux系列之文件和目录权限
前言 我们知道,root用户基本上可以在系统中做任何事.其他用户有更多的限制,并且通常被收集到组中.你把有类似需求的用户放入一个被授予相关权限的组,每个成员都继承组的权限. 让我们看一下: 查看权限( ...
- Oracle数据库如何解决创建用户名开头必须要C##问题?
1.问题 我们在创建用户,概要文件等时,由于使用的是容器数据库,其文件名必须以C##开头. 我们在学习过程中暂时不需要对齐进行区分,所以如何修改这个设定呢? 2.解决 参考链接如何解决创建用户名开头必 ...
- java - 字节流读取文件
package stream; import java.io.*; public class InputStreamReaderString { public static void main(Str ...
- 《OnJava》——11内部类
内部类 利用内部类,可以将逻辑上存在关联的类组织在一起,而且可以控制一个类在另一个类中的可见性. 内部类和组合不同,内部类是一种代码隐藏机制:将代码放在其他类的内部. 11.1 创建内部类 创建内部类 ...
- MySQL高可用搭建方案之(MHA)
有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top 首发博客地址 原文地址 MHA架构介绍 MHA是Master High Av ...
- drop_caches 的简单学习
drop_caches 的简单学习 背景 最近一段时间一直在学习内存相关的知识 Linux系统里面的内存管理还是非常复杂的. 我这边理解 Linux从宏观层次的 段页式内存管理 到细节的buddy和s ...