实用 Jenkins Docker 镜像

Jenkins 跟 GKE 的 Load Balancer 不兼容怎么办?当然是选择原谅他啊。

最近在玩 Google 的 Container Engine,发现 Jenkins 的安装过程的安全防护跟 GKE 的负载均衡器有点不和谐。要在启动初始化过程之前,完成对 CSRF 特性的调整。弄着弄着就收不住了,所以就有了对我那个 “要你命3000” Jenkins 镜像的一次大升级。

主要功能

  • 分为 Alpine 和 Ubuntu 两个基础版本。
  • 内嵌多种 CI/CD 相关工具,例如 git、robotframework with selinium、mvn、nodejs 等。
  • 可越过初始化过程,直接指定既有的 config.xml。
  • 可定制的初始化 Groovy 脚本。
  • 可直接设置一号用户的用户 ID 和密码。

更重要的功能

这一版加入了一个神奇的脚本:install-plugins.sh,这一脚本能够自动安装指定插件极其依赖,配合上面的自定义 Groovy 脚本和 config.xml 功能。就方便的打造符合个人口味的、开箱即用的 Jenkins 镜像了,例如加入 git 支持,只需 install-plugins.sh git 即可。下面的 Dockerfile 会建立一个带有 docker-build-step 和 git 支持的,用户名密码分别为 ‘admin’ 和 ‘password’ 的镜像:

FROM dustise/jenkins
RUN install-plugins.sh git
RUN install-plugins.sh docker-build-step
ENV ADMIN_USER="admin"
ENV ADMIN_PASSWORD="password"

Github 项目地址或者用下面的命令直接运行:

docker run -it -p 3001:8080 --rm
-e ADMIN_PASSWORD="MY_PaSS_W0rd"
-e ADMIN_USER="administrator"
--name=jenkins
dustise/jenkins:latest
Avatar
崔秀龙

简单,是大师的责任;我们凡夫俗子,能做到清楚就很不容易了。

comments powered by Disqus
下一页
上一页

相关