jenkins 部署问题
1. 懷疑 jenkins 沒有拉到最新的包
解決:
清除 jenkins 工作空間
?
2. jenkins 自動構建時, start.sh 腳本已經執行成功,但是應用總是啟動后自動退出了
進程沒有起來,從 pid 文件來看,start.sh 確實已經啟動過,從 log 中來看,應用啟動后,就莫名的 shutdown 了
分析:
首先,懷疑是不是代碼問題,導致應用起不來。這種情況排除。
接著,在 jenkins 上更改構建腳本,讓 start.sh 的執行日志輸出到 start.log ==> ./start.sh > start.log 2>&1,看有沒有錯誤輸出
再次部署,居然成功了,進程起來了。查看 start.log 輸出的是應用啟動日志。
這樣,懷疑 start.sh 是不是沒有將腳本執行內容重定向輸出
解決:
更改 start.sh,增加 >/dev/null 2>&1
nohup java $JAVA_OPTS $JAVA_MEM_OPTS $JAVA_JMX_OPTS -jar pkg/*.jar --spring.config.location=config/application.yml --spring.profiles.active=prod >/dev/null 2>&1 & echo $! > pid
?
3. jenkins 構建腳本中有一步 rm deploy/* 的操作,當 deploy 包下面沒有文件時,會導致 rm 報錯,從而構建部署失敗
解決:
臨時解決方案,在 deploy 目錄下 touch 一個文件,再點擊構建
?
?
部署腳本(start.sh)注意的地方:
1. -Djava.io.tmpdir=/app/xxx/tmp 指定的臨時目錄是否存在
2. 啟動腳本將日志重定向到 nohub.out (或其他文件 system.log),這樣可以看全量日志查找問題 (springboot?項目)
轉載于:https://www.cnblogs.com/kevin-yuan/p/10066377.html
總結
以上是生活随笔為你收集整理的jenkins 部署问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【读书笔记】计算机是怎样跑起来的
- 下一篇: 如何在不支持双面打印的打印机上实现双面打