部署jenkins镜像踩坑记录

1、首先jenkins版本很重要!!!因为刚开始我看网上的帖子说jenkins/blueocean版本好用,我就下载了,但在安装插件的时候出现了插件安装不上的情况,而且是插件之间版本互相冲突,搞得我真的焦头烂额,最后没有办法我就选择了最新版本部署了。

2、部署jenkins镜像后,在打包项目和发布的时候,需要用到相关的系统环境,所以我们在启动jenkins镜像的时候就要把用到的宿主机上的相关的环境全部挂载进jenkins容器里,记住是用到的所有的地址!!!(比如构建发布maven镜像,则需要jdk,maven,git,docker,docker-compose等项目构建打包发布运行的相关环境)。

Jenkins运行的命令如下:

docker run -d -p 8080:8080 -p 50000:50000 -v /var/jenkins_home:/var/jenkins_home -v /etc/localtime:/etc/localtime -v /usr/local/java/jdk1.8.0_161/:/usr/local/java/jdk1.8.0_161/ -v /usr/local/maven:/usr/local/maven -v /var/run/docker.sock:/var/run/docker.sock -v /usr/bin/docker:/usr/bin/docker -v /usr/local/bin/docker-compose:/usr/local/bin/docker-compose -v /opt/yhp_system.yml:/opt/yhp_system.yml -v /opt/yhp_front.yml:/opt/yhp_front.yml -v /etc/docker/daemon.json:/etc/docker/daemon.json --name myjenkins jenkins/jenkins

 其中/opt/yhp_system.yml是我运行项目是需要的yml配置文件;/var/jenkins_home地址是将jenkins镜像中的地址挂载到宿主机上,方便使用。

3、挂载进jenkins的环境的地址全部需要在宿主机上开放权限。

chmod 777 -R /var/run/docker.sock
chmod 777 -R /usr/bin/docker
chmod 777 -R /etc/docker/daemon.json
chmod 777 -R /root/.docker/

4、打包时相关的报错解决办法:

如果报IOException,No such file or directory,大多数是因为没有挂载/var/run/docker.sock。
如果报错unauthorized to access repository,大多数是因为config.json和daemon.json权限问题,即在Jenkins镜像中无法访问这两个文件,可以进入Jenkins中访问下这两个文件测试下是否有权限。

补充:上面运行的docker命令是对本地特定的文件进行挂载,如果后续可能会有很多yml文件在jenkins中构建的话,就需要将yml所在的文件夹挂载进去,命令改为如下:

docker run -d -p 8080:8080 -p 50000:50000 -v /var/jenkins_home:/var/jenkins_home -v /etc/localtime:/etc/localtime -v /usr/local/java/jdk1.8.0_161/:/usr/local/java/jdk1.8.0_161/ -v /usr/local/maven:/usr/local/maven -v /var/run/docker.sock:/var/run/docker.sock -v /usr/bin/docker:/usr/bin/docker -v /usr/local/bin/docker-compose:/usr/local/bin/docker-compose -v /opt/:/opt_yml/  -v /etc/docker/daemon.json:/etc/docker/daemon.json --name myjenkins jenkins/jenkins

其中/opt/:/opt_yml/是挂载进入镜像的命令,opt是宿主机上存放yml的文件夹,opt_yml是jenkins镜像中挂载的文件夹,文件挂载成功的前提是opt_yml为镜像中新的且无数据的文件夹。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值