Jenkins属于比较老且使用最广的持续集成工具可视化工具了,现在也有很多别的工具,还有一些针对个人开源的产品可供参考和使用,其中这一个就很不错,可以体验一番https://coding.net/【全面兼容 Jenkins 】。
介绍
Jenkins参考博客 | 与Git EE关联
楼主使用的docker安装,首先拉取Jenkins镜像,注意此处有个坑,不指定标签默认拉取的镜像不是最新版,这个版本有问题,无法安装插件,所以拉取镜像时一定要指定最新版的镜像。
拉取镜像
docker pull jenkins/jenkins
查看镜像中的Jenkins版本
docker inspect 【ec2bfee7c206|容器ID】
创建容器
注意楼主这里给容器映射到了宿主机的Jenkins文件上,此处也有一个小坑,就是此目录创建完毕后,如果当前用户是非root用户一定要赋予当前用户对此文件夹足够的权限,否则容器创建完毕后,也会运行失败,因为密码等文件写入不到此文件夹内。
查看容器运行日志
docker logs 【61e5de4d49b4|容器ID】
错误信息
[chenfu@chenfu-admin chenfu]$ docker logs 61e5de4d49b4
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?
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?
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?
修改权限如下
chown -R 1000 【jenkins|目录】
创建并运行容器
docker run -itd -p 8080:8080 -p 50000:50000 \
--name jenkins --privileged=true \
-v $PWD/jenkins:/var/jenkins_home \
--env JAVA_OPTS="-Duser.timezone=GMT+08" \
jenkins/jenkins:latest
主要参数解析:
- -v 目录映射
- -p 端口映射
- -env JAVA_OPTS="-Duser.timezone=GMT+08" 解决jenkins时间显示和本地时间不一致的问题