构建部署_Jenkins介绍与安装
构建部署_Jenkins介绍与安装
Jenkins介绍
Jenkins是一个可扩展的持续集成引擎。
持续集成,就是通常所说的CI(Continues Integration),可以说是现代软件技术开发的基础。
持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员至少集成一次,也意味着每天可能会发生多次集成。
每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件。
Jenkins安装
- 搜索 Jenkins 镜像,选择合适的镜像
powershell
[root@localhost docker]# docker search jenkins
- 拉取镜像
powershell
[root@localhost docker]# docker image pull jenkins/jenkins
- 创建 Jenkins 挂载目录并赋予权限
powershell
cd /usr/local
mkdir jenkins
- 创建并启动 Jenkins 容器(直接复制下面代码到终端)
powershell
docker run -d \
-p 9001:8080 \
-p 50000:50000 \
-v /usr/local/jenkins:/var/jenkins_home \
-v /etc/localtime:/etc/localtime \
--privileged=true \
--restart=always \
--name=jenkins \
jenkins/jenkins
-d:后台运行容器;
-p 9001:8080:将容器的 8080 端口映射到服务器的 9001 端口;
-p 50000:50000:将容器的 50000 端口映射到服务器的 50000 端口 好像与jenkins相关;
-v /usr/local/jenkins:/var/jenkins_home:将容器中 Jenkins 的工作目录挂载到服务器的 /usr/local/jenkins;
-v /etc/localtime:/etc/localtime:让容器使用和服务器同样的时间设置;
--privileged=true: 设置权限
--restart=always:设置容器的重启策略为 Docker 重启时自动重启;
--name=jenkins:给容器起别名
jenkins/jenkins:镜像名称
- 查看容器
powershell
docker ps -la
- 重新启动jenkins
powershell
docker run -d jenkins/jenkins
- 查看启动日志
powershell
docker logs jenkins
查看日志报错
touch: cannot touch '/var/jenkins_home/copy_reference_file.log': Permission denied
Can not write to /var/jenkins_home/copy_reference_file.log. Wrong volume permissions?
INSTALL WARNING: User: missing rw permissions on JENKINS_HOME: /var/jenkins_home
touch: cannot touch '/var/jenkins_home/copy_reference_file.log': Permission denied
Can not write to /var/jenkins_home/copy_reference_file.log. Wrong volume permissions?
解决措施:
给目录授权:/usr/local/jenkins
[root@localhost local]# chown -R 1000 /usr/local/jenkins/
- 然后启动jenkins
powershell
[root@localhost local]# docker start jenkins
- jenkins国内镜像加速
powershell
cd /usr/local/jenkins
cat hudson.model.UpdateCenter.xml
- 将此文件的url替换为
powershell
[root@localhost jenkins]# vi hudson.model.UpdateCenter.xml
- 重启jenkins
powershell
docker start jenkins
这里要注意
192.168.160.129 :IP是虚拟机的IP
9001:端口要下面执行命令的端口要一致
docker run -d
-p 9001 :8080
-p 50000:50000
-v /usr/local/jenkins:/var/jenkins_home
-v /etc/localtime:/etc/localtime
--privileged=true
--restart=always
--name=jenkins
jenkins/jenkins
- 将密码复制粘贴进入,点继续,路径具体看安装路径
powershell
[root@localhost local]# cat /usr/local/jenkins/secrets/initialAdminPassword
- 点击安装推荐的插件