ubuntu 中基于docker运行jenkins

1.使用下面的命令拉取jenkins的docker镜像,这里用的是lts的长期支持版本,你可以到jenkins官网自由选择其他版本

1.sudo docker pull jenkins/jenkins:lts #拉取jenkins镜像
2.配置宿主机映射到容器的目录,之后jenkins的一些配置文件都将会存储到该目录下,这个目录可以自己定,但是我建议遵守我这样的规范,便于日后查找和管理
1.sudo mkdir /home/jenkins_home # 创建jenkins_home目录

2.sudo chown -R 1000:1000 /home/jenkins_home #设置该目录的所有者和所属的组,普通用户默认uid为1000,gid为1000,chown应该是change own的简写,指改变文件夹权限,-R指遍及子目录

3.启动jenkins的docker镜像,并设置相关参数,参数解释:
-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

4.容器启动后,就可以访问ip:8080看到jenkins首次运行的首页了,启动页面会一直卡住,提示:

Please wait while Jenkins is getting ready to work…

vim /home/jenkins_home/hudson.model.UpdateCenter.xml

将https://updates.jenkins.io/update-center.json改为https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/current/update-center.json

docker restart jenkins #重启jenkins

5.进入jenkins之后会要求输入管理员密码
sudo cat /home/jenkins_home/secrets/initialAdminPassword #这个就是管理员密码
5.安装插件的时候有些插件会安装不上报错,选择重试安装就行了

最后再重启jenkins就行啦

Jenkins默认插件:
Folders
OWASP Markup Formatter
Build Timeout
Credentials Binding
Timestamper
Workspace Cleanup
Ant
Gradle
Pipeline
GitHub Branch Source
Pipeline: GitHub Groovy Libraries
Pipeline: Stage View
Git
Subversion
SSH build Agents
Matrix Authorization Strategy
PAM Authentication
LDAP
Email Extension
Mailer
Localization: Chinese (Simplified)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章