jenkin 阿里云部署

jenkins自动部署部署

 

环境准备

  • linux服务器(双十一团的99元一年  CentOS 7.4 64位
  • jdk(安装 https://www.cnblogs.com/shihaiming/p/5809553.html
  • maven  
  • 数据库(https://yq.aliyun.com/articles/285398)
  • 远程仓库代码(git,需要有远程仓库进行代码拉取打包测试)
  • Jenkins安装
  • tomcat安装(springboot项目自带tomcat打包就不需要,如果是war所以需要tomcat,jar在构建后的脚本运行更方便些)

 

中间的小坑

  • 端口开放的bug问题,阿里云的服务器默认只开放3389 -1 22三个端口,比如mysql,tomcat等服务都要去设置端口开放
  • tomcat没有输出日志 ./startup.sh 换成./catalina.sh run j就能在tomcat中显示日志的情况
  • nohup  java -jar XXXX-SNAPSHOT.jar 遇到nohup: ignoring input and appending output to ‘nohup.out’ 没有权限的问题, nohup ./XXX语句 >/dev/null 2>&1 & 进行设置 具体解决使用Linux重定向解决nohup.out无写权限问题
  • jenkin默认是隐藏目录 使用xsftp设置打开隐藏文件,就能查看内部的文件等,workspace中下载远程仓库的代码,shiro_project是jenkins中项目名,shiro是代码的文件名,运行的脚本后可以将文件放置在target中,在送cp语句将生成的jar复制到制定的文件夹中

 

  • 多个tomcat启动端口配置问题,不仅仅是server端口,还有其他端口被占用的问题,
  • <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
  • <Server port="8005" shutdown="SHUTDOWN">
  • <Connector port="8888" protocol="HTTP/1.1"    connectionTimeout="20000"   redirectPort="8443" />

  • HTTP/1.1的端口根据项目修改,如果启动多个tomcat服务需要尽可能修改将端口都进行修改

 

jenkins入门的教学 慕课网

  • jenkin配置节点
  • 新建项目
  • 配置构建的仓库
  • 书写脚本语音
  • 补充上进程的杀死等
  • #!/usr/bin/env bash
    # 文件所在的位置等
    cd $PROJ_PATH/shiro
    mvn install -DskipTests
    # 复制新的工程
    cp $PROJ_PATH/shiro/target/shiro_test-1.1-SNAPSHOT.jar $TOMCAT_APP_PATH/
    
    #!/bin/sh 杀死原来的进程情况
    NAME=shiro_test-1.1-SNAPSHOT.jar
    echo $NAME
    ID=`ps -ef | grep "$NAME" | grep -v "grep" | awk '{print $2}'`
    echo $ID
    echo "---------------"
    for id in $ID
    do
    kill -9 $id
    echo "killed $id"
    done
    echo "---------------"
    
    # 启动Tomcat
    cd $TOMCAT_APP_PATH/
    java -jar shiro_test-1.1-SNAPSHOT.jar  & tail -f

     

 学习慕课网视频(https://www.imooc.com/learn/1008

posted @ 2018-11-20 00:04  七分饱  阅读(312)  评论(0编辑  收藏  举报