Docker安装Jenkins,使用jdk1.8进行源码编译,ant工具打包,且发布到远程的tomcat8.5中,实现正常的项目访问

本文介绍了如何使用Docker安装Jenkins,配置JDK1.8和Ant环境,解决环境变量持久化问题,以及通过Jenkins拉取源码,Ant打包,将应用发布到远程Tomcat8.5容器的过程,最后讨论了Jenkins忘记密码的解决方法。
摘要由CSDN通过智能技术生成

前言
前段时间公司测试遇到一个问题,她们部署的Jenkins突然变成了英文版,然后她们按照网上的资料安装了一个中文插件,却把整个Jenkins搞死了,然后花了一段时间来恢复Jenkins,却发现越走越远,最后来咨询了下我,但很遗憾,我重来没有搞过Jenkins这玩意啊,我也帮着搞了一段时间,却发现依然没办法恢复,所以我建议她们重新安装部署吧。然后就开始了长时间的部署,其实安装Jenkins很简单,但就是没有办法打包,由于公司使用的是ant打包普通的web工程,以前也没搞过,一直打包不成功,搞得很难受。正好那段时间不算忙,所以我就跟着学习部署Jenkins了,我没有在Windows下部署Jenkins,而是使用docker部署,简单的创建了一个Jenkins容器,然后启动,登录Jenkins主页配置全局,创建任务,却发现依然没有办法打包,也就是war没办法打出来,然后去详细看了下以前的工程师们创建build.xml文件,一行代码一行代码的看,终于发现了问题,由于使用的ant,但我创建的Jenkins容器中其实并没有安装ant,所以我需要去安装一个ant插件,最初不清楚怎么搞,看到Jenkins管理页面有一个插件安装的管理,然后我也去装了一个,却发现并没有什么用,一开始就是想能够见到搞就简单搞,毕竟docker创建容器简单,但在容器中安装各类插件还是比较麻烦,主要麻烦就是他的环境变量很麻烦,当你添加了环境变量之后本次有效,但重新进入容器或者重启之后,之前设置的环境变量就会失效了,会被还原,搞得我很崩溃,毕竟docker才接触不久,完全就是一菜鸟,最后只能找度娘,但问题是找了很多博客都没有发现类似的解决方案,最后在某一个博客的评论中,终于发现了解决方案,按照此方式操作之后确实可以。不外乎就是jdk环境和打包需要使用的ant环境,前前后后搞了接近两天时间,期间还需要的就是tomcat容器因为jdk的版本过高导致没有办法正常访问项目,最后需要将tomcat容器的jdk也给修改为1.8,这里需要注意的是docker创建的容器默认安装的jdk版本比较高,如果和自己的开发环境不匹配可能导致程序的正常运行,当我调整了环境之后项目终于成功跑起来了。回想这几天的处理过程还是比较曲折,避免之后还有此类现象的问题出现,所以记录成博客,供大家参考,也给自己留一个笔记吧,具体的安装操作过程我们接下来详细介绍

第一,Docker安装Jenkins
  • 查看Jenkins版本
docker search jenkins
  • 拉取最新版本的Jenkins
docker pull jenkins/jenkins
  • 创建一个Jenkins容器,并重定向端口号,挂载目录到宿主机/root/jenkins_mount的文件夹中,且设置容器的时间和宿主机的时间相同
docker run -d -p 10240:8080 -p 10241:50000 -v /root/jenkins_mount:/var/jenkins_home -v /etc/localtime:/etc/localtime --name docker-jenkins jenkins/jenkins
第二,下载Jdk8的安装包
  • 打开JDK官网
    在这里插入图片描述

  • 在页面中点击Java archive查看所有的Java版本
    在这里插入图片描述

  • 在列表中选择需要的版本,我选择的是Java SE 8 (8u211 and later)进入具体的版本下载页,在页面中选择Linuxjdk-8u291-linux-x64.tar.gz版本进行下载
    在这里插入图片描述

  • 将下载包放在宿主机/root/jenkins_mount目录中

  • 进入宿主机解压安装包,或者进入容器的/var/jenkins_home进行解压也可以

tar -zxvf jdk-8u291-linux-x64.tar.gz
第三,下载Ant安装包
  • 打开Ant官网点击链接https://ant.apache.org/bindownload.cgi.
    在这里插入图片描述
  • 在打开的页面中找到Old Ant Releases
    在这里插入图片描述
  • 点击here打开所有的版本页,选择自己需要的版本进行下载,本文下载apache-ant-1.10.7-bin.tar.gz的版本
    在这里插入图片描述
  • 将下载包放在宿主机/root/jenkins_mount目录中
  • 进入宿主机解压安装包,或者进入容器的/var/jenkins_home进行解压也可以
tar -zxvf apache-ant-1.10.7-bin.tar.gz
第四,添加Jdk1.8的环境变量和Ant1.10.7的环境变量
  • 通过命令找到Jenkins的配置文件ID
docker inspect docker-jenkins |grep Id
  • 进入宿主机的/var/lib/docker/containers,找到上一步获取到的Id所对应的目录,进入目录会发现有一个配置文件叫做config.v2.json,将Jdk的环境变量和Ant的环境变量插入到Env的值中,由于此文件是json格式,所以环境变量也是以键值对的形式插入到其中
 "PATH=/var/jenkins_home/apache-ant-1.10.7/bin:/var/jenkins_home/jdk1.8.0_291/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
 "JAVA_HOME=/var/jenkins_home/jdk1.8.0_291",
 "ANT_HOME=/var/jenkins_home/apache-ant-1.10.7",
 "CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar"
  • 注意:修改配置文件之前容器必须关闭,否则当容器重启之后,环境将会被还原到初始状态
  • 保存配置文件,重启docker服务
  • 重启重启守护线程(可操作可不操作)
systemctl daemon-reload
  • 重启docker服务
systemctl restart docker
  • 启动Jenkins容器
docker start docker-jenkins
  • 进入Jenkins容器,测试Jdk是否已经替换成功
docker exec -it docker-jenkins bash
  • 通过命令查看Java版本
java -version
第五,docker安装Tomcat8.5的容器
  • 查看tomcat镜像
docker search tomcat
  • 拉取tomcat8.5的镜像
docker pull tomcat:8.5
  • 创建tomcat容器,并挂载目录到/root/tomcat_mount
docker run -d -p 8088:8080 --name docker-tomcat -v /root/tomcat_mount:/usr/local/tomcat/webapps tomcat:8.5
  • 将jdk1.8的安装包copy到/usr/local/tomcat/plugins目录中
  • 进入tomcat容器,在/usr/local/tomcat目录中创建plugins文件夹
mkdir plugins
  • 目录授权
chmod -R 750 plugins
  • 将jdk1.8从Jenkins的挂载目录拷贝到/usr/local/tomcat/plugins
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值