tomcat과 jenkins 서버가 같이 있는 경우 문제가 발생했다.

기존에는 배포서버에서 톰캣 서버로 ssh 접속하여 tomcat 재기동을 하였지만

이번 구성은 서버 하나에 모든 구성이 들어가게 되어 tomcat과 jenkins 서버가 같이 있게 되었다.

 

기존 처럼  스테이지를 아래와 같이 구성했다.

    stage('Deploy1') {
        sh "sh /data/web3/deploy1.sh"
        sh "sh /data/web3/healthcheck1.sh
    }

물론 배포 및 재기동도 잘 되었다.

그런데 핼스체크이후 파이프 라인이 종료하면 톰캣도 종료되는 것이다.

 

이런 파이프라인이 종료하면 파이프라인에서 실행한 프로세스도 같이 종료시키는 사상이라고 한다.

 

배포 스크립트를 백그라운드로 실행하고 실행 시 JENKINS_NODE_COOKIE=dontKillMe 옵션을 주면 된다.

    stage('Deploy1') {
        sh "JENKINS_NODE_COOKIE=dontKillMe && nohup sh /data/web3/deploy1.sh &"

        sh "slepp 10s"
        sh "sh /data/web3/healthcheck1.sh
    }

 

 

+ Recent posts