jenkins --部署项目到服务器需要的脚本 我不是女神ヾ 2022-06-07 01:38 195阅读 0赞 \#概要 maven构建后,会生成war包,使war运行需要如下几步: * 复制生成的war包到指定的目录(jenkins服务器和应用部署服务器不在同一台服务器) cp /scp * 解压文件到指定的目录 unzip 我们需要在下图的中地方,输入需要执行的脚本 ![这里写图片描述][format_png] 在post steps 选择 execute shell ![这里写图片描述][format_png 1] 在 command中输入要执行的脚本 # jenkins服务器和应用服务器是同一台服务器 # ## 复制文件 cp/scp ## cp 目标文件 复制目标目录 (本地复制文件) scp 目标文件 登录远程服务器用户@ip/域名:复制目标目录 ( 复制文件到远程) 如: jenkins生成的war包位于: /root/.jenkins/workspace/marketking/target/marketking.war 我们想复制到 /var/www 那么命令如下: cp /root/.jenkins/workspace/marketking/target/marketking.war /var/www ## 解压文件 unzip ## 经过上面的复制,我们可以在。发现 /var/www/marketking.war 解压到 /var/www/marketking 使用: unzip -o /var/www/marketking.war -d /var/www/marketking \-o : 不管文件是否存在,直接覆盖 \-d : 如果你要解压到指定目录,而不是当前目录 # jenkins服务器和应用服务器不在同一台服务器 # \#\#需要执行远程命令 ssh 我们使用ssh -l user ip 登录远程服务器,可是在使用自动执行的脚本时候我们没法输入密码,我们需要添加jenkins的公钥在应用服务器。 \#\#查看自己/jenkins服务器的公钥 cd ~ cd .ssh/ ls // 查看是否有 id_rsa.pub 文件如果有 //如果有 cat id_rsa.pub //复制公钥(里面的内容) 如果没有则生成公钥: [参考这里][Link 1] 进入目标服务器,增加公钥: 在 authorized\_keys 文件下增加你的公钥(如果没有创建文件)。 添加完成后,就可以使用ssh 不要密码登录服务器了。 最后使用如下命令,执行需要在远程执行的命令(ssh -t -t 会模拟出一个远程终端) ssh -t -t 应用服务器ip/域名 "要执行的命令" [format_png]: /images/20220607/90b3c7ea601d4cd7acbb2cf819ce9001.png [format_png 1]: /images/20220607/089806b7e5e445808fce5f8412c36d42.png [Link 1]: https://www.liaohuqiu.net/cn/posts/ssh-keygen-abc/
还没有评论,来说两句吧...