前提条件:手动在服务器上可以部署成功
安装jenkins插件Mave Integration和Deploy to Container


创建任务

配置如下


github触发重新构建,具体设置参考github提交触发jenkins自动构建 (tangxuyang.cn)



开启tomcat的Manager功能
这个凭证是tomcat的账号,默认tomcat是不开启Manager功能需要配置$CATALINA_HOME/conf/tomcat-users.xml
<role relename="manager-script" />
<user username="自己起名字" password="自己写密码" roles="manager-gui, manager-status, manager-script" />
然后重启tomcat即可
遇到问题
Host key verification failed
我是通过apt install jenkins安装的jenkins,安装时会默认把jenkins注册成服务,可以用systemctl来管理,比如启动systemctl start jenkins。同时会创建jenkins用户,启动jenkins时用的就是这个用户。
我之前使用root账户生成了ssh key(在root/.ssh/id_rsa.pub)中,我把这key配置到了github上,通过命令行克隆仓库是正常的,但是使用jenkins自动构建就总是失败。最终找到原因,是因为jenkins服务运行用的是jenkins用户,拿不到root的key。解决办法就是为jenkins用户创建ssh key。
su jenkins
ssh-kengen -t rsa
然后把/var/lib/jenkins/.ssh/id_rsa.pub中的内容配置到github上!完美解决:)
发表回复