怎么将jenkins打包后的war自动部署到jetty上?

1,使用maven的cargo插件,实现远程部署

(官网描述地址:https://codehaus-cargo.github.io/cargo/Jetty+Remote+Deployer.html)html

Maven中添加配置文件:git

Type: 可选参数有remote(远程部署的模式)还有:standalone,existing两种模式,能够参阅(github

http://blog.csdn.net/steveguoshao/article/details/38469713web

eclipse

Cargo.hostname: 表示要远程的地址maven

Cargo.Servlet.port: 表示要远程的端口号.net

Ps: 经过远程实现自动化部署的时候必须在jetty中设置相应的权限插件

Cargo.remote.username: 为具备该权限的用户名代理

Cargo.remote.password: 相应的密码code

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上成功了。

相关文章
相关标签/搜索