docker image: 在centos上安装jenkins

2021-03-16  本文已影响0人  芒鞋儿

1.Docker image 自己创建的一个窍门
通常都是从dockerhub 上直接拉取docker 镜像,但有些时候因为有一些版本和参数的微调,一些事先要安装的工具需要等都需要追加,如果能找到初始的dockerfile 再修改就比较方便。
通常docker image 的dockerfile 都在github 上

例如:
jenkins/jenkins 的docker image 可以从docker hub 上拉取,其原始版本的dockerfile 可以到以下repo 找到
https://github.com/jenkinsci/docker/tree/quickstart

官方的docker image 通常有很多版本,不同的os对应不同版本

2.在centos 上用下载jenkins.war再安装的方式搭建jenkins 作为作为service 提供 有两个比较重要的地方要注意。

  1. jenkins 中对jenkins user 的权限规定比较特殊,安装的时候需要root 和 jenkins:jenkins 两套切换,原因是在jenkins server 上run job 的user在系统中默认都是jenkins,其workspace,root也不可以access,不可执行。
  2. jenkins 作为service run,container 是不具备这个功能的,(以前在autohealing 的时候也遇到,run nginx的方式和普通container 不同)
    container 中不能执行systemctl 等命令,如果需要执行的话,在docker run 的时候要制定 --privileged=true 并且要用到/sbin/init
    在jenkins 的这个dockerfile 中,用/sbin/tini 运行,这个程序似乎是专门处理这类service,而无需docker 用privilege方式运行。

3.jenkins 如果和website 在一起,需要用反向proxy 做一下代理,方法可以参考以下:
https://github.com/maxfields2000/dockerjenkins_tutorial/blob/master/tutorial_06/jenkins-master/Dockerfile-Centos7

其他参考文献:

补充:
安装git 2.22 一篇有用的参考·
安装内容已经集成在
https://github.com/xieheng0915/jen27-centos7

上一篇下一篇

猜你喜欢

热点阅读