0x00 Jenkins
Jenkins是一款功能十分强的的开源软件,他的功能是支持一些项目的自动化部署。Jenkins的主要强大之处就是它支持的插件很多,借助插件可以实现很强的功能。
我们在对一个项目进行开发的时候,可以使用Jenkins对项目进行自动构建部署,还可以借助它进行网站版本的控制。Jenkins大大的减少了人工干预而造成的错误。
docker部署
docker run
-u root #以root身份运行
-d
-p 8080:8080 #web访问界面的端口号
-p 50000:50000 #基于JNLP的Jenkins代理端口
-v jenkins-data:/var/jenkins_home #映射目录可自行设置
-v /var/run/docker.sock:/var/run/docker.sock #方便Jenkins与docker守护进程通信
jenkinsci/blueocean
docker run -u root -d -p 8080:8080 -p 50000:50000 -v jenkins-data:/var/jenkins_home -v /var/run/docker.sock:/var/run/docker.sock jenkinsci/blueocean
0x01 配置
访问:ip:8080
如果访问时一直停留在这个界面,说明访问资源出现问题。
解决办法:把Jenkins工作目录下hudson.model.UpdateCenter.xml里面的 https://updates.jenkins.io/update-center.json 更改为http://mirror.xmission.com/jenkins/updates/update-center.json然后重启容器,等待几分钟即可。
输入密码的界面提示的路径为docker容器里面的路径,可以进入docker容器进行查询,也可知道映射路径进行查询
接下来按照提示进行配置即可
0x02 其他
除了 jenkinsci/blueocean 镜像还有 jenkins/jenkins 镜像
他们两的区别是 jenkinsci/blueocean 是基于Alpine的镜像,jenkinsci/jenkins是基于Debian的镜像
Alpine属于精简版linux对很多软件的兼容不如Debian,例如nodejs