zoukankan      html  css  js  c++  java
  • Jenkins + Ant + Git + Tomcat自动化部署

    环境linux下,大致的配置内容如下:

    1. 首先安装JDK配置环境变量等。
    2. 其次安装ANT配置ANT_HONE并把bin目录加入PATH中。
    3. 然后安装Git,并生成sshkey配置ssh
    4. 安装tomcat,并配置用户信息
    5. 最后下载jenkins.war包,部署到tomcat下。

    1. 环境变量如下:

    JAVA_HOME=/usr/local/jdk1.8.0_73
    PATH=$JAVA_HOME/bin:$PATH
    CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    ANT_HOME=/usr/local/apache-ant-1.9.7
    PATH=$ANT_HOME/bin:$PATH
    export ANT_HOME
    export JAVA_HOME
    export PATH
    export CLASSPATH

    2. 配置tomcat用信息如下:

    <role rolename="manager-gui"/>
      <role rolename="manager-script"/>
      <role rolename="manager-jmx"/>
      <role rolename="manager-status"/>
      <role rolename="tomcat"/>
      <role rolename="role1"/>
      <user username="tomcat" password="tomcat" roles="tomcat"/>
      <user username="both" password="tomcat" roles="tomcat,role1"/>
      <user username="admin" password="admin" roles="tomcat,role1,manager-gui,manager-script,manager-jmx,manager-status"/>

    3. 生成SSH的操作

    ssh-keygen -t rsa -C "xxxxxx@yy.com"

    回车三次(无密码) 在~/.ssh 文件夹下生成两个文件,id_rsa  id_rsa.pub 其中pub表示公钥,将公钥添加到git 远程库中。私钥需要添加到jenkins的配置中。

    在jenkins页面点击Credentials,变添加私钥信息在此处。

    3. jenkins配置

    打开jenkins,初始化后,安装如下插件(Ant、Deploy to container Plugin、Git)

    插件配置

    在系统管理--Global Tool Configuration中进行配置git的执行路径

    image

    ant的可执行路径,以及ant的名称

    image

    代码中ant的build文件

    样例如下:

    <?xml version="1.0" encoding="UTF-8" ?>
    <project name="palace" default="compile" basedir=".">
        <property name="tomcat.lib" value="/usr/local/apache-tomcat-8.0.24/lib" />
        <property name="dest.dir" value="WEB-INF/classes" />
        <property name="src.dir" value="src" />
        <!-- 定义属性,打成war包的名称。 -->  
        <property name="warFileName" value="palace.war"></property>  
        <target name="init">
            <mkdir dir="${dest.dir}" />
        </target>
        <target name="compile" depends="init">
            <javac srcdir="${src.dir}" destdir="${dest.dir}">
                <classpath>
                    <fileset dir="${tomcat.lib}">
                        <include name="*.jar" />
                    </fileset>
                    <fileset dir="WebContent/WEB-INF/lib">
                        <include name="*.jar" />
                    </fileset>
                </classpath>
            </javac>
        </target>
        
        <!-- 定义默认任务,将class文件集合成jar包。 -->  
        <target name="war" depends="compile">  
            <!-- 删除原有war包。 -->  
            <delete dir="${basedir}/${warFileName}" />  
            <!-- 建立新war包。 -->  
            <war destfile="${basedir}/${warFileName}" webxml="${basedir}/WebContent/WEB-INF/web.xml">  
                <!-- 将非jar和非class文件拷贝到war包的对应路径下。 -->  
                <fileset dir="${basedir}/WebContent">  
                    <include name="**/**.*" />  
                    <exclude name="**/*.jar"/>  
                    <exclude name="**/*.class"/>  
                </fileset>  
                <!-- 将jar和class文件拷贝到war包的对应路径下。 -->  
                <lib dir="${basedir}/WebContent/WEB-INF/lib" />  
                <classes dir="${dest.dir}" />  
            </war>  
        </target>
        
        <target name="clean">
            <delete dir="${dest.dir}" />
        </target>
    </project>

    手动创建job

    源码管理配置(此处选择上面添加的Credentials)

    image

    构建配置(选择上述添加的名称,另外targets可空,也可填写自己要构建的target名称,最后执行的命令为

    ant -file build.xml war(target名称)

    image

    构建后操作,注意此处必须是**/*.war,(即使绝对路径也会报错)

    image

  • 相关阅读:
    DEDECMS之五 单页
    DEDECMS之六 网站地图、RSS地图
    DEDECMS之四 栏目调用
    DEDECMS之三 首页、列表页怎么调用文章内容
    DEDECMS之七 如何实现文章推荐排行榜
    centos6下安装dedecms
    C# 自动部署之附加数据库
    产品经理技能之BRD的笔记之菜鸟入门
    产品经理技能之MRD的笔记之一
    产品需求文档(PRD)的写作方法之笔记一
  • 原文地址:https://www.cnblogs.com/dorothychai/p/6039360.html
Copyright © 2011-2022 走看看