怎么将jenkins打包后的war自动部署到jetty上?
1,使用maven的cargo插件,實現遠程部署
(官網描述地址:https://codehaus-cargo.github.io/cargo/Jetty+Remote+Deployer.html)
Maven中添加配置文件:
Type: 可選參數有remote(遠程部署的模式)還有:standalone,existing兩種模式,可以參閱(
http://blog.csdn.net/steveguoshao/article/details/38469713
)
Cargo.hostname: 表示要遠程的地址
Cargo.Servlet.port: 表示要遠程的端口號
Ps: 通過遠程實現自動化部署的時候必須在jetty中設置相應的權限
Cargo.remote.username: 為具有該權限的用戶名
Cargo.remote.password: 相應的密碼
2,下載遠程部署的代理的war包
Ps:因為jetty并沒有遠程部署的功能,所以我們需要一個東西可以接收我們項目的war包,所以就出現了這個代理的角色,其實它也是個標準的webApp。
支持jetty7及以上版本的war的下載地址(
http://repo1.maven.org/maven2/org/codehaus/cargo/cargo-jetty-7-and-onwards-deployer/1.4.18/cargo-jetty-7-and-onwards-deployer-1.4.18.war?? )
修改 war 包中 WEB-INF 中web.xml 文件 將注釋放開:結果為:
3,為jetty 添加訪問權限
(官網介紹的地址:
http://www.eclipse.org/jetty/documentation/current/configuring-security-authentication.html#security-realms
)
3.1:在 jetty9.2/etc/jetty.xml 文件中添加如下配置:
3.2: 在jetty9.2/etc 中創建 realm.properties 文件,文件內容為
userName: password,manager
userName: 為步驟一的cargo.remote.username 中的值
Password:為步驟一的cargo.remote.password 中的值
Manager: 為當前角色所擁有的權限(要和步驟二中的role-name 的值一致
)
至此:整個過程就算完成了,將jetty 運行起來,通過訪問?
http://127.0.0.1:8080/cargo-jetty-deployer/
驗證是否配置正確
1,讓填寫用戶名和密碼
2,驗證用戶名和密碼驗證成功后會顯示? Command / is unknown
說明遠程部署到jetty上成功了。
轉載于:https://www.cnblogs.com/daoxingsi/p/5362971.html
總結
以上是生活随笔為你收集整理的怎么将jenkins打包后的war自动部署到jetty上?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 为什么现在没有自动战斗仪
- 下一篇: 2016.4.2 动态规划练习--讲课整