ansible结合playbook批量部署war包项目上线
批量部署jenkins.war包实现上线
用于测试war包上线
[root~localhost]~#vim /etc/ansible/test.yml
- hosts: test
vars: tomcat: /usr/local/tomcat8
remote_user: root
tasks: - name: "创建备份目录backup"
file: dest={{ tomcat }}/backup owner=root group=root state=directory mode=0755
ignore_errors: True
- name: "创建新war包所在的目录newwar"
file:
dest={{ tomcat }}/newwar owner=root group=root state=directory mode=0755
ignore_errors: True
#- name: "备份旧的 war"
#shell: cp -r {{ tomcat }}/webapps/test.war {{ tomcat }}/backup/test-`date '+%F'`.war
- name: "拷贝新的war包到远程服务器,把war包位置放在创建的新目录下"
copy:
src=/tmp/jenkins.war
dest={{ tomcat }}/newwar
- name: "停止tomcat服务"
shell: ps -ef | grep tomcat | grep {{ tomcat }} | grep -v grep | awk '{print $2}' | xargs kill -9
tags: stop
ignore_errors: True
#- name: "删除webapps下旧war包"
#file: dest={{ tomcat }}/webapps/test.war state=absent
- name: "拷贝新的war包到webapps"
shell: mv {{ tomcat }}/newwar/jenkins.war {{ tomcat }}/webapps
# - name: "删除临时文件"
#shell: rm -rf {{ tomcat }}/temp/*
#- name: "删除项目缓存"
#shell: rm -rf {{ tomcat }}/work/Catalina/localhost/test
- name: "启动tomcat服务"
shell: nohup {{ tomcat }}/bin/startup.sh &
[root~localhost]#~ ansible-playbook /etc/ansible/test.yml
每台机器才执行一下启动,脚本启动shell模块不支持
[root~localhost]#~/usr/local/tomcat8/bin/startup.sh
访问http://192.168.30.21:8080/jenkins
ansible结合playbook批量部署war包项目上线的更多相关文章
- IntelliJ IDEA 2017版 spring-boot 2.0.3 部署war包项目和jar包项目
1.建立项目 Java Controller package com.springboot.jsp.controller; import org.springframework.stereotype. ...
- Ansible 利用playbook批量部署mariadb
环境说一下 192.168.30.21 ansible 192.168.30.25 client1 192.168.30.26 client2 这里我的ansible环境已经部 ...
- Ansible 利用playbook批量部署Nginx
我这里直接部署的,环境已经搭建好,如果不知道的小伙伴可以看上一遍ansible搭建,都写好了,这里是根据前面环境部署的 192.168.30.21 ansible 192.168.30.25 ...
- Linux tomcat部署War包,Linux在Tomcat部署JavaWeb项目,Linux部署War包
Linux tomcat部署War包,Linux在Tomcat部署JavaWeb项目,Linux部署War包 >>>>>>>>>>>& ...
- tomcat本地部署war包的方式
最近学习java,在本地tomcat部署时,主要采取以下方式: 一.本地构建生成war包 在本地项目中的terminal下,使用命令 “mvn clean install”或 先执行“mvn clea ...
- Docker容器Tomcat部署war包
在docker容器中使用tomcat部署war包主要包括四个步骤,创建tomcat容器.上传war包到容器.重启容器.访问应用. 1.创建tomcat容器 使用docker run -d --nam ...
- weblogic安装部署war包——windows
### weblogic安装部署war包——windows#### 下载weblogic安装包[csdn下载地址](https://download.csdn.net/download/luozhua ...
- tomcat快速部署War包操作
Linux快速部署War包操作,暂时是最简单的操作 1.先关闭Tomcat /home/java/tomcat7/bin/shutdown.sh 2.进入War包存放目录(可以通过工具:SSH Sec ...
- 如何在windows上部署war包到tomcat服务器
一. 什么是war包 WAR(Web Archive file)网络应用程序文件,是与平台无关的文件格式,它允许将很多文件组合成一个压缩文件.war专用在web方面,一个war包可以理解为一个web项 ...
随机推荐
- 图像处理之基础---基于opencv的灰度图像微分
argv分别为,可执行文件名.读入的原始图像.输出原始图像的灰度值.输出原始图像灰度值沿x轴方向的一阶微分.输出原始图像灰度值沿x轴方向的二阶微分. #include #include #includ ...
- c++运算符重载以及一些基本概念
c++primer第四版435 1.赋值( = ), 下标( [ ] ) ,调用 ( ( ) ), 成员訪问箭头 (->)等操作符必须定义为成员,定义为非成员时,编译器报错 2. 像赋值一样 ...
- 【OI】关于快速幂的简单理解
都知道算某个数的幂需要线性的复杂度,为了优化复杂度,就出现了所谓的快速幂. 快速幂的代码很短,但是要原理需要一点心思. 首先,我们知道, a^b = a^c * a^d (c+d=b) 那么,不就可以 ...
- bzoj4974: [Lydsy1708月赛]字符串大师
脑洞题...玄学 假如是a[i]!=i,说明构成了循环节长为a[i]的循环,那就去%一下(别想多)看一下是循环节中的第几个咯. 否则新填的这个不能和前面构成任何循环,那就不停往前跳去把不能填的标记一下 ...
- Cocos2dx如何引用第三方SO文件(Android NDK)
做项目的过程中发现,引用第三方的库lib3rdsdk.so,当直接把lib3rdsdk.so放进armeabi文件夹里,会被删除掉.查网上资料都说的不全,经过实验,最简单的方法就是在jni下的andr ...
- go语言---reflect
go语言---reflect https://blog.csdn.net/cyk2396/article/details/78902953 一.reflect的使用: import ( "f ...
- Same origin policy
Chrome: Origin null is not allowed by Access-Control-Allow-Origin 的问题 发送 http request 时遇到 error: Ori ...
- PHP面向对象技术(全面讲解)
作者:高洛峰 来源:<PHPer>杂志 1.面向对象的概念 面向对象编程(Object Oriented Programming, OOP, 面向对象程序设计)是一种计算机 ...
- Spring MVC的学习笔记
基于注解形式配置Spring MVC 一.注册并初始化DispatcherServlet,由Servlet容器自动检测并启动 注解形式 public class MyWebApplicationIni ...
- npm install 安装软件,出现 operation not permitted, mkdir 'C:\Program Files\nodejs\node_cache'
问题如下图: 解决办法: 在开始菜单栏里打开cmd的时,右击选择“以管理员身份运行”.然后再在打开的cmd里运动install就没问题了. 这个问题应该是当时安装依赖时,我们是以管理员身份运行的:所以 ...