远程自动部署


远程自动部署
 
下面这段是用在Jenkins 自动编译完成后的脚本:
 
添加到Build->Execute Shell中,
[plain] 
sshpass -p pwd ssh -t root@192.168.1.55 'service my_web stop'  
sshpass -p pwd scp bin/my_web root@192.168.1.55:/home/dist/web/  
sshpass -p pwd ssh -t root@192.168.1.55 'service my_web start' &  
 
这样就可以了。
远程机器也是Ubuntu, IP: 192.168.1.55, 并且已经设定好了/etc/init.d/my_web脚本,以及约定了要将程序拷贝到/home/dist/web目录下。
密码也已经设定。
Jenkins 机器上要安装sshpass, 并且首先尝试一次,按下yes建才行。sshpass可以传递密码,-t 参数是模拟键盘输入。
这段脚本最后用& 结束,否则Jenkins build会挂住。
 
这是个简易的方法,如果部署需要控制更多的信息,还是应该像Google一样,有一个专门的web server负责部署。程序只需要将要部署的二进制程序和配置上传即可。
 

相关内容

    暂无相关文章