@Java讲坛杨33
此文可以帮助开发人员从头到尾,使用jenkins构建部署基于Gitee的Maven项目,提高项目部署的效率。
阅读本文的整体大纲,为如下内容:
- 新创建一个Maven项目,作为被部署的对象;
- 将该Maven项目上传到Gitee远程仓库中;
- Linux服务器上使用Docker容器安装Jenkins部署工具;
- 配置Jenkins的部署环境;
- 使用Jenkins构建基于Gitee的Maven项目。
新建一个简单的Maven项目
首先,在本地搭建一个简单的Maven项目,并成功把项目跑起来,能够在浏览器中访问。
按照如下图集,一步一步操作即可成功搭建。
此时,启动tomcat服务器,就可以在本地浏览器成功访问这个简单的Maven项目了。
上面的操作,只是成功的在本地把一个web的Maven项目跑起来了。接下来做的是,能够让项目添加到Git仓库的版本控制中。
把上面创建的Maven项目发送到Gitee远程仓库中
这一步,首先去gitee网站新建一个远程仓库,操作步骤:新建远程仓库。
新建一个名为Gitee-Jenkins的远程仓库。
然后,在本地创建Git本地仓库,如何在IDEA中使用Git创建Git本地仓库,参考:玩转IDEA关联Git的图文教程。该教程中还可以学习到如何将Git本地仓库的项目代码发送到远程仓库中,交给Git远程仓库进行对项目的版本控制。
Docker中安装Jenkins
我们使用前面学过Docker知识Docker容器完整使用教程,使用docker-com文件安装Jenkins。
- 首先在Linux服务器上编辑该文件,vim docker-com,内容如下:
version: "3.1" services: jenkins: image: jenkins/jenkins restart: always container_name: jenkins ports: - 8888:8080 - 50000:50000 volumes: - ./data:/var/jenkins_home
- 执行命令docker-compose up -d,下载镜像并自动启动jenkins容器
- 查看启动jenkins容器的日志信息
docker-compose logs -f
- 赋予权限,然后再重启由docker-compose管理的jenkins容器
#赋予权限的命令 chmod 777 data/ #重启由docker-compose管理的jenkins容器 docker-compose restart
- 再重新查看启动jenkins容器的日志信息,打印出来了解锁Jenkins的管理员密码。下面打开Jenkins的web界面会用到这个密码
#重新查看启动jenkins容器的日志信息 docker-compose logs -f
- 上传JDK和Maven的安装包并解压到数据卷data目录下,也就相当于添加到了Jenkins的容器内部的/var/jenkins_home目录下
- 再设置下Maven的文件,添加阿里云的Maven仓库jar包下载加速器
<mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>;/url> </mirror>
- 打开Jenkins的web界面,进行初始化设置
#浏览器输入下面的地址
出现如下图所示界面,给图中的输入框内输入上面日志中的密码串
选择插件来安装:默认使用推荐的,最后再根据需求添加相应的插件
安装成功后,创建登录的用户信息
实例配置默认即可
此时,Jenkins已就绪
开始使用Jenkins,打开登录后的web界面。说明Jenkins已经安装成功。
配置Jenkins的部署环境
- 设置全局的环境配置:JDK和Maven。
- 安装Tomcat插件
搜索插件:Deploy to container
- 使用Docker安装Tomcat
#拉取tomcat镜像 pull daocloud.io/library/tomca #创建tomcat容器,同时映射数据卷 docker run --name tomcat -d -p 8080:8080 -v volume_tomcat:/usr/local/tomcat/conf 03
设置下Tomcat的用户名密码,修改文件,如下:
<role rolename="manager-gui"/> <role rolename="admin-gui"/> <role rolename="manager-script"/> <user username="admin" password="admin" roles="admin-gui,manager-gui,manager-script"/>
到此。基础的环境已经搭建好了,接下来就是最后一步,实现成功使用Jenkins构建基于Gitee的Maven项目。
使用Jenkins构建基于Gitee的Maven项目
- 新建一个任务
- 设置“源码管理”模块
gitee远程仓库的信息配置
- 设置“构建”模块
Maven的命令配置
- 设置“构建后操作”模块
Tomcat的环境配置
- 开始构建项目
- 打开控制台输出的日志窗口
- 最后使用浏览器成功访问到了Gitee上的项目
上面已经完成了本文编写的目的。如果下次对项目代码文件做了修改或者新增,我们只需把这些代码文件发送到Gitee的远程仓库,然后重新在Jenkins中构建下这个项目即可。
仔细观察控制台输出的信息,如果在构建过程中有异常报错信息,可以根据这些信息排查出问题到底出在哪里,改正后重新构建即可。
这种使用Jenkins构建基于Gitee的Maven项目,还有一种功能扩展,就是持续集成部署。即只要本地有提交代码到远程仓库的动作,就会自动触发构建项目,对开发人员来说更加的便捷。
所用到的是Gitee的WebHooks和Jenkins的插件Gitee。
这个功能,小编我也尝试过,但是由于自己本地建起来的虚拟机IP不能被码云的公网访问,所以失败了。解决的办法是通过市面上一些内网穿透的工具,将自己的IP透明给公网访问,就可以了。
比较好用的就是natapp,它有两个免费的隧道可以使用。所以如果不想消费,不一定珍惜这两个免费的午餐,在使用之前一定要好好看看相关的使用教程,再下手实践。
到此,本次知识分享就结束了,谢谢大家对我的创作方面的鼓励。我会继续努力。
作者:杨33,北京互联网公司在职Java开发,专注分享写作干货。欢迎关注我,期待你的点赞评论。