ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

使用Jenkins实现自动化部署

2022-01-21 17:04:13  阅读:91  来源: 互联网

标签:github 配置 tomcat 部署 自动化 maven jenkins Jenkins


大致工作流程:

  本地代码开发完 提交到代码仓库例如github 由webhook触发Jenkins上的配置,Jenkins自动拉取GitHub上的代码然后编译打包部署。

 

1.前提工作准备(可能出现的问题)

Springboot项目 (使用maven打包要排除内置的tomcat 和 高版本jdk的依赖要降低依赖)

JDK1.8(找到jdk安装路径)

maven3 (打包的时候需要下载项目的依赖 花费时间较长)

git(找到安装目录)

Tomcat(对应版本,配置user用户名密码权限)

Jenkins (对应版本以及插件安装)

github(ssh密钥配置)

 

 

1.安装jdk

yum install -y java-1.8.0-openjdk

wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins.io/redhat-stable/jenkins.repo
rpm --import http://pkg.jenkins.io/redhat-stable/jenkins.io.key

ls -lrt /etc/alternatives/java 查找java安装路径

 

2.下载Jenkins(我这里直接用的war包)

wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.164.2-1.1.noarch.rpm
rpm -ivh jenkins-2.164.2-1.1.noarch.rpm

 

启动命令

nohup java -jar jenkins.war --httpPort=1080 &

记得关闭防火墙

 

启动成功后 访问ip加端口 根据提示找到初始的密钥粘贴进去

创建一个用户,等待Jenkins插件进行更新下载,这里最好使用较新版本的Jenkins 旧版本有的插件下载容易报错

 

3.安装maven 配置环境

export M2_HOME=/opt/server/apache-maven-3.8.4
export PATH=$PATH:$M2_HOME/bin

 

4.安装tomcat

wget https://archive.apache.org/dist/tomcat/tomcat-8/v8.0.23/bin/apache-tomcat-8.0.23.tar.gz

tar -zxvf 解压后启动即可

还有设置密码

 

 

5.配置github密钥

ssh -keygen -t -rsa -C "xx@xx.com"  #一路回车就好

生成完去这个目录下将id_rsa.pub内容拷贝到github上

 

测试是否配置成功的指令

ssh -T git@github.com

 

6.等所有前提工作做好后 登录进Jenkins后

1.先进全局配置里把jdk 和maven git 都配置上本地的对应 这里需要填安装路径

2.随便创建一个job 然后进行配置

源码管理选git 贴上你项目的github的url

对应分支写好

构建触发器选github hook

构建选配好的maven

构建后操作

 

 

Credentials 是你tomcat配置的用户名密码

点击保存。之后执行后

等等git 拉取代码 maven下载依赖 编译 打包 部署 成功

 

 

然后直接访问对应的ip端口和请求即可看到

到这里算是实现半自动部署了

全自动需要将Jenkins服务器ip映射到公网 让GitHub可以访问到 

在GitHub选中你的项目 setting下找WebHook

将你的ip填写进去

 

此时当你本地工作区push到GitHub时 会发一个信息数据到你的Jenkins

触发后进行下拉 编译打包 部署

即可完成全自动的

容器部署配置那块可以通过增加节点服务

脚本编写等等

 

标签:github,配置,tomcat,部署,自动化,maven,jenkins,Jenkins
来源: https://www.cnblogs.com/YinXuanZhiZhi9/p/15830896.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有