熊熊出没 发表于 昨天 14:06

jenkins打包远程部署到另一台服务器

配置远程服务器信息https://i-blog.csdnimg.cn/direct/bef7ff3abaf542fa8e5b70cc63b0d22a.png
拉到底找到ssh新建hostname填远程服务器的ip,name的话是jenkins的标识随便填就行
,username是服务器的账号,谁人Remote Directory就填个/,先听我的,我后面解释一下,等明白了,再根据自己的需求改就好了。
https://i-blog.csdnimg.cn/direct/da4203ec5fe749868e99533dd8ee8fca.png点高级然后点开谁人Use password authentication, or use a different key
https://i-blog.csdnimg.cn/direct/41c28f5ab4a64254862590ba702eb9bb.pnghttps://i-blog.csdnimg.cn/direct/ec596b48e82b492a9ca41282262b22ab.png输入服务器暗码
然后新建项目,具体的一些步调可以看我上一篇jdk1.8安装jenkins的安装教程,里面有具体的一些新建项目步调,会的话直接跳过就好,
在post steps节点按照以下操纵设置源文件目录以及目标文件目录
https://i-blog.csdnimg.cn/direct/585dbfb8f5b54d1c91b511b43871a5e0.png谁人name就是一开始让填的远程服务器信息,那边填完之后,点开这个就能选择到了
source file就是jenkins部署的服务器上必要传输文件的路径,Remove prefix这个是必要扫除不必要传输的文件,这个个人感觉用处不大,所以没有填,Remove prefix这个是必要上传到目标服务器的目录,exec command这个是传输完文件必要远程服务器实验下令的一些操纵,着实就是写一些实验下令的,我这里写的比力简朴只是将传过去的文件进行重定名了,复杂的操纵就不写了,知道这个步调就行了。
https://i-blog.csdnimg.cn/direct/68a0f555fd50454e95efdce5c91a60e8.png然后就是很多人都懵的谁人路径的问题,在这里统一解释一下

https://i-blog.csdnimg.cn/direct/ff27ac22160e4d6aa9826c3dd6072215.pnghttps://i-blog.csdnimg.cn/direct/83fc5e6f464f488bb2b4bc2cfc6c2cb5.pnghttps://i-blog.csdnimg.cn/direct/f932770491fe4a69969dfc0dad9e1798.png
这个地址我看很多人都不说,根本没有一个说的,就说是目标服务器的必要传输文件的目录,这个我自己也弄了半天才搞懂的,而且感觉这个路径很鸡肋,这里分了两个Remote directory
一开始我以为是走此中的一个,但是我想的太灵活了,哪个天才想出来的,现实上真实的必要传到目标服务器的目录是这两个地址的叠加路径。
我打个比方如上面三张图片,图一是配置的服务器信息的路径我这里填空,图二是项目里面填的路径填的/test,按想法应该是根目录下的test(留意图二中的路径必须先存在,不然传文件就会报错找不到路径)。结果呢直接给我干到桌面的路径去了linux的桌面路径一样平常就是/root,
就是给我干到/root/test了,按我上面的写法和说法应该叠加路径是/root,结果第一层空的话相当于是cd ~/test了,你说天不天才,所以最好图一的地址不要空,至少给个/,第二层就随意了,就比如我第一层是/home,第二层是/test,现实的路径就是/home/test了,这个功能完全没搞懂有什么作用,直接给一个绝对路径的事情,搞得多此一举了。这里推荐就是图一的路径给个/,然后图二就用绝对路径就能正常用绝对路径作为目标目录了
https://i-blog.csdnimg.cn/direct/f908a658fc564358b2795bc22e840b1b.png这个路径也要说明一下,这个就是主服务器的必要传送文件的路径,这个路径也挺讲求的,我以为是直接填绝对路径,但并不是如许的,jenkins只能操纵自己的项目路径
/tools/jenkins/jenkins/workspace/test/dddd
这个就是真正的完备路径,jenkins只能操纵workspace路径下的文件,并且每个项目打包都会有个单独的目录,比如我的项目是test,sourcefiles路径就只能操纵以下路径了/tools/jenkins/jenkins/workspace/test/。
说简朴点就是sourcefiles路径跟前面说的谁人Remote directory雷同,只是他固定了前面的路径/tools/jenkins/jenkins/workspace/项目名称/
现实就是/tools/jenkins/jenkins/workspace/项目名称/加上source files路径
我的项目是test,我要传的是dddd目录下的所有文件,现实就是
/tools/jenkins/jenkins/workspace/test/dddd/**
仅供参考,现实请以自己的路径为准。
另有要留意的是source files这个路径最好都是   路径/**  这种格式,以我自己为例子直接用dddd他会报错,用dddd/** 或者dddd/ 格式都行。


然后另有一些必要留意的我上面说的谁人内容,我自己的需求是如许的,打包好jar包,传过去启动,另有脚本也传过去,如果直接传整个项目标test文档肯定不行的,而且我最后整个走完之后jenkins服务器上源码都得删掉,所以就更不大概将整个test目录传到目标服务器上,如许源码都过去了所以我传的时候只要jar包和自己的一些脚本文件传过去实验。我自己是如许操纵的,我先是在传输文件这个步调前,在jenkins的服务器上实验了一些步调
我在,test这个目录下实验创建一个新的目录,将我必要的jar包和一些其他的脚步文件放到这个目录下,然后只传这个目录,所以谁人remove prefix我不写,把必要的放到一个目录里,传谁人目录就行,看个人需求吧。https://i-blog.csdnimg.cn/direct/1e7485d426fe4724918ea31750c5312b.png

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: jenkins打包远程部署到另一台服务器