本篇讲如何使用Publish over SSH组件来实现Jenkins部署到远程服务器的需求。
大概讲一下项目背景。这是一个小老板的小电商广告平台项目,提供的资金非常有限,为了提供最佳的服务性能,所以在仅有的一台阿里云CES服务器全部资源用来运行应用服务,ops全部在本地进行,程序打包完成后使用,在上传部署。但是在后期发现,手工部署运维成本极大,而且灵活性很差。所以我就DIY了一台虚拟机,全部的DevOps在这个虚拟机上进行。这样实现在虚拟机Jenkins服务,远程部署到阿里云上,后面的Ops全部通过虚拟机来实现。我把这个虚拟机进行了docker,到时候如果需要将环境移到线上,就着实方便了很多,啥都不需要要做,就可以无缝衔接。
这里我们着重写一下如何使用Publish over SSH组建来实现Jenkins远程部署程序到服务器上。
因为我在这个项目中用的是gradle构建,所以我找了一个我的类似架构的gradle工程来做演示。在具备了一个远程阿里云ces、本地虚拟机(我是ubuntu18.04)连个系统资源外,还需要在远程机和虚拟机上配置好相关的组建服务,如ces的jre,localVM的jdk,gradle,git,Jenkins等服务组件。以下步骤默认环境都是OK的。
1. 配置远程服务Publish over SSH
选择Jenkins的【系统管理】-》【系统管理】-》【Publish over SSH】标签页,如图所示
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190618153511662.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM