本文是在ubuntu环境下安装jenkins,jenkins运行在docker容器中,至于docker如何安装,本文再也不描述,你们能够上网查询下,如何安装docker,下面先放上一个使用jenkins自动部署原理图片(图片是网上找的,感谢原创分享)java
下面介绍安装jenkins步骤:linux
sudo docker pull jenkins/jenkins:ltsgit
sudo mkdir /home/jenkins_home # 建立jenkins_home目录 sudo chown -R 1000:1000 /home/jenkins_home #设置该目录的全部者和所属的组,普通用户默认uid为1000,gid为1000,chown应该是change own的简写,指改变文件夹权限,-R指遍布子目录
-d 表示之后台模式运行 --name 为容器定义一个名字(后面能够代替容器id使用) -p 表示映射容器的端口到宿主机的端口 -v 表示映射宿主机的目录到容器的目录 -u root 使用root用户运行,避免后面出现的一些执行权限问题 -v /home/jenkins_home:/var/jenkins_home 映射jenkins_home,将数据存储到宿主机,这样配置就不会随容器丢失 -v /var/run/docker.sock:/var/run/docker.sock 与 -v /usr/bin/docker:/usr/bin/docker 把宿主机docker 映射到容器内,能够直接在容器内使用宿主机docker -v /usr/lib/x86_64-linux-gnu/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7 \ 容器内docker运行须要的库文件 -v /opt:/opt \ 自主安装的一些运行时软件(如java/maven/git...) -v /etc/timezone:/etc/timezone 映射时区文件,保证容器的时区和宿主机相同(官网的jenkins容器时区不是中国的时区) 最后的jenkins/jenkins:lts是要启动的镜像
sudo docker run -d --name jenkins -p 8080:8080 -p 50000:50000 -u root \ -v /home/jenkins_home:/var/jenkins_home \ -v /var/run/docker.sock:/var/run/docker.sock -v /usr/bin/docker:/usr/bin/docker \ -v /usr/lib/x86_64-linux-gnu/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7 \ -v /opt:/opt \ -v /etc/timezone:/etc/timezone jenkins/jenkins:lts
sudo cat /home/jenkins_home/secrets/initialAdminPassword
按照上面的步骤jenkins安装成功了,打开浏览器输入http://192.168.10.*:8080,地址,如页面报错,提示一直加载中,应该是jenkins服务没有启动成功,手动启动下jenkins容器。 docker
sudo docker restart jenkins 启动jenkins容器
Jenkins插件管理界面==> http://192.168.10.*:8080/pluginManager
Jenkins插件管理-高级设置界面==> http://192.168.10.*:8080/pluginManager/advancedubuntu
Jenkins更新页面http://192.168.10.*:8080/updateCenter浏览器
感谢原文做者分享:https://www.jianshu.com/p/9018cfa3654bmaven