我想從我的Jenkins部署到Tomcat,而不使用這個 "部署到容器 "插件。
因此,我正在考慮使用Tomcat REST API來部署一個war檔案。Tomcat和Jenkins是在不同的服務器上。
也許只需將檔案復制到webapps檔案夾中就可以了?但是,我仍然必須部署它,以啟動它。對嗎?
說實話,到目前為止,我還沒有發現任何可以部署到Tomcat的REST API。問題是如何使.war檔案可用。
uj5u.com熱心網友回復:
從Jenkins,你可以使用一個bash腳本將.war檔案轉移到你的Tomcatwebapps目錄(如果你使用pipeline,代碼是一樣的)。
首先,停止Tomcat的運行
ssh tomcat '${TOMCAT_BIN_PATH}shutdown.sh'
然后,將war復制到你的webapps目錄中Tomcat
scp -r -p jenkins@jenkins:path/to/war/file.war tomcat@tomcat:path/to/webapp/
之后,你必須啟動Tomcat,.war將被自動部署
ssh tomcat@tomcat '${TOMCAT_BIN_PATH}startup.sh'
如果您使用的是Maven,我建議您看看tomcat-maven-plugin,您可以在這里找到它。你可以用下面的命令部署war檔案:
mvn -B -P deploy-profile-from-pom-xml tomcat7:deploy-only
一個實施的例子可以在這里找到
UPDATE
如果你想讓Tomcat延遲webapps目錄檢查,你可以在server.xml配置中添加backgroundProcessorDelay
< Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" backgroundProcessorDelay="15">
例如,Tomcat將每隔15秒才檢查一次新的.war,用這個代碼。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/329896.html
標籤:
上一篇:PSQLException。ERROR:運算子不存在:bigint=charactervarying
下一篇:抽象流C
