• 一步一步搭建Jenkins环境


     

    Jenkins使用经验谈1(一步一步搭建Jenkins环境)
    在公司使用 Jenkins 软件已经有一段时间了,走了很多弯路,但也积累了一些经验,可以和大家分享一下。
    我们来一起搭建Jenkins环境。首选你需要安装好JRE/JDK和Tomcat。由于这不是本文的重点,所以关于其安装过程就跳过不谈。
    我实验用的服务器操作系统为64位版本的CentOS 5.4,安装JDK 版本为 64位的 1.6.0;安装Tomcat版本为 7.0.14。
    题外话,为了解决可能出现的 OutOfMemoryError: PermGen space 问题,需要修改一下$TOMCAT_HOME/bin/catalina.sh 文件,添加一句
    JAVA_OPTS="-Xms512m -Xmx768m -XX:MaxNewSize=256m -XX:MaxPermSize=128m"

    在Jenkins 官方网站(http://jenkins-ci.org/)下载最新版本war包。拷贝到 $TOMCAT_HOME/webapps 下(不用解压),删除 webapps 下其他目录(当然也可以不用Tomcat直接启动Jenkins,因为他已经内嵌了Jetty)。
    现在我们创建一个用于存放所有Jenkins数据的目录,比如 /jenkins。添加环境变量 JENKINS_HOME 到 /etc/profile 中指向这个路径。
    export JENKINS_HOME=/jenkins

    现在我们可以启动 $TOMCAT_HOME/bin/startup.sh 来启动Jenkins了,但这样每次启动太麻烦,我们把它做成一个服务来启动。
    在 /etc/init.d/ 下创建一个 jenkins 文件
    # vi /etc/init.d/jenkins

    内容如下,如果你希望用指定用户启动,请修改 JENKINS_USER=root 的值,但要记得更改 /jenkins 以及Tomcat 目录的访问权限。另外其他环境变量例如 JAVA_HOME 和 TOMCAT_HOME 要根据你实际JDK和Tomcat的安装目录修改。
    #!/bin/sh
    #
    # Startup script for the Jenkins Continuous Integration server
    # (via Jakarta Tomcat Java Servlets and JSP server)
    #
    # chkconfig: - 85 15
    # description: Jakarta Tomcat Java Servlets and JSP server
    # processname: tomcat
    # pidfile: /var/run/tomcat.pid
    
    #!/bin/sh
    #
    # Startup script for the Jenkins Continuous Integration server
    # (via Jakarta Tomcat Java Servlets and JSP server)
    #
    # chkconfig: - 85 15
    # description: Jakarta Tomcat Java Servlets and JSP server
    # processname: tomcat
    # pidfile: /var/run/tomcat.pid
     
    # Set Tomcat environment.
    JENKINS_USER=root
    LOCKFILE=/var/lock/jenkins
    export PATH=/usr/local/bin:$PATH
    export HOME=/jenkins
    export JAVA_HOME=/usr/local/jdk1.6.0_25
    export JENKINS_BASEDIR=/jenkins
    export TOMCAT_HOME=/usr/local/tomcat-7.0.14
    export CATALINA_PID=$JENKINS_BASEDIR/jenkins-tomcat.pid
    export CATALINA_OPTS="-DJENKINS_HOME=$JENKINS_BASEDIR/jenkins-home -Xmx512m -Djava.awt.headless=true"
     
    [ -f $TOMCAT_HOME/bin/catalina.sh ] || exit 0
     
    export PATH=$PATH:/usr/bin:/usr/local/bin
     
    # See how we were called.
    case "$1" in
      start)
            # Start daemon.
            echo -n "Starting Tomcat: "
            su -p -s /bin/sh $JENKINS_USER -c "$TOMCAT_HOME/bin/catalina.sh start"
            RETVAL=$?
            echo
            [ $RETVAL = 0 ] && touch $LOCKFILE
            ;;
      stop)
            # Stop daemons.
            echo -n "Shutting down Tomcat: "
            su -p -s /bin/sh $JENKINS_USER -c "$TOMCAT_HOME/bin/catalina.sh stop"
            RETVAL=$?
            echo
            [ $RETVAL = 0 ] && rm -f $LOCKFILE
            ;;
      restart)
            $0 stop
            $0 start
            ;;
      condrestart)
           [ -e $LOCKFILE ] && $0 restart
           ;;
      status)
            status tomcat
            ;;
      *)
            echo "Usage: $0 {start|stop|restart|status}"
            exit 1
    esac
     
    exit 0
    
    

    安装如下命令将Jenkins做成服务启动(以后启动和停止Jenkins也使用 service 命令)。
    # chmod a+x /etc/init.d/jenkins
    # chkconfig jenkins on
    # service jenkins start
    


    现在访问这台服务器 http://172.16.12.80:8080/jenkins/ 可以看到 Jenkins 已经启动了。



    我们打算在这台服务器上装个 Nginx 做一下反向代理,为了方便,我选择使用RPM包安装的方式:

    # wget http://nginx.org/packages/rhel/5/x86_64/RPMS/nginx-1.0.9-1.el5.ngx.x86_64.rpm
    # rpm -ivh nginx-1.0.9-1.el5.ngx.x86_64.rpm
    


    新建一个配置文件 /etc/nginx/conf.d/jenkins.conf 内容如下(注释掉的两行是打印日志用的,一般情况下不用打开):

    server {
        listen       80;
        server_name  ci.abc.com;
        #access_log /var/log/jenkins_access_log main;
        #error_log  /var/log/jenkins_error_log  debug_http;
        client_max_body_size 60M;
        client_body_buffer_size 512k;
        location / {
            proxy_pass      http://localhost:8080;
            proxy_redirect  off;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
    }
    
    


    现在启动 Nginx 

    # service nginx start


    我们先修改一下本机的 hosts 文件(C:WindowsSystem32driversetchosts)添加:

    172.16.12.80 ci.abc.com


    这次我们在浏览器里输入 http://ci.abc.com/jenkins 可以看到页面了!



    到这里基本的Jenkins环境已经搭建好了
  • 相关阅读:
    js判断正则匹配
    手机号正则匹配
    php获取图片宽高等属性
    百度分享如何自定义分享url和内容?
    nginx 解决400 bad request 的方法(转载)
    php怎么解析utf-8带BOM编码的json数据,php解析json数据返回NULL
    C#求和
    C#索引器
    LeetCode刷题笔记-递归-路径总和
    LeetCode刷题笔记-递归-将有序数组转换为二叉搜索树
  • 原文地址:https://www.cnblogs.com/zengda/p/5300866.html
Copyright © 2020-2023  润新知