jenkins+jhipster集成

准备工作:

安装Jenkins

新建一个Jhipster项目

开始集成:

新建一个Jenkins构建项目

只配置源代码

构建,成功,稍微有点信心了

配置执行构建脚本

./mvnw package -Pprod -Dmaven.test.skip=true

构建失败,mvnw无执行权限

增加执行权限

chmod +x mvnw

构建成功

继续。。。

配置构建Docker镜像

./mvnw package -Pprod -Dmaven.test.skip=true docker:build

华丽丽的失败了,原因是jenkins服务是以jenkins用户运行的,而docker命令需要root用户,你妹的!

暴力法

把jenkins提升为管理员权限

修改/etc/sudoers文件,增加以下配置

jenkins ALL=NOPASSWD:ALL

继续构建!

我擦,打包都失败了。

bower插件提示我不要用root用户运行!!!

看样子这条路行不通啊

此处迷茫中。。。。

总结一下问题:

我们的jhipster构建脚本把docker打包插件也集成进去了,虽然方便是方便,但是对jenkins来说不太友好了。

那么把打包和docker分开?也许这是个好办法,事实证明确实如此。

好吧,让我们回到起点

chmod +x mvnw

./mvnw package -Pprod -Dmaven.test.skip=true

在网上搜索了一下,有个jenkins有个docker-build-step插件可以满足我们的需求

试一下,反正又不会怀孕。插件安装中。。。

插件安装之后,构建菜单中增加了一个Execute Docker Command的选项

非常简洁,我喜欢。

选择Create/build image

配置一下docker context folder

愤怒地按下立即构建!

从无数个的红灯中过来的人的心情你能理解吗?你能吗?

结果还是失败,fuck!

原文地址:https://www.cnblogs.com/mkxzy/p/7250762.html