花了周末两天时间,搞了一下基于Jenkins+Docker的自动化部署微服务。记录一下笔记。
前面安装软件的时候,忘记说了,这个自动化部署微服务是基于Linux的哈。
兄弟们,兄弟们,终于到了展示技术的时候了。Show Time!!!
忘记了把我自己写好的一个基础微服务代码地址贴上了,地址是Gitee,有需要的可以去下载回来,而且简单易懂,关键是没啥东西😏。
https://gitee.com/li_shi_sheng/k-2000.git我去?有人watching我了???😱😱😱happy。。。
言归正传,进入主题
刚安装好的Jenkins,需要配置一些东西,比如插件,jdk,maven等等这些(等等是指?等等还有啥?我也不知道了。)
注意:下面的Jenkins是我之前早就安装好和配置好的,不是之前带童鞋们安装的那个Jenkins哈,可以看看访问地址就可以看出来了
配置Jenkins
点击管理Jenkins
点击全局配置
JDK的配置
- 点击新增JDK
- 给这个新增的JDK写上别名
- 配置自己安装在Linux上的JDK安装路径
- 然后就完了,点应用就可以了
如果没有出现这个配置,就要把Install automatically这复选框取消勾选
Git配置
- 配置别名
- 配置Git在Linux上的安装路径,但要注意的是,这个配置要配置到bin目录下的git命令
如果没有出现这个配置,就要把Install automatically这复选框取消勾选
Maven配置
- 新增
- 起别名
- 配置maven的安装路径
如果没有出现这个配置,就要把Install automatically这复选框取消勾选
JDK、Git、Maven都配置好之后,就可以保存了,直接点击保存就可以了
Jenkins插件安装
点击管理插件
安装插件
需要安装的插件
- Publish Over SSH。作用是允许通过SSH的方式连接Linux,然后进行部署项目等
- Deploy to container。作用是允许在项目构建完成之后,部署到容器中
搜到这俩个插件之后,一起勾选,然后下载并重启就可以了
等待安装…
安装完成之后,重新登陆Jenkins就可以了。
凭据配置
1、点击管理凭据
2、点一下全局
3、添加凭据
4、选用户名和密码(我这里选这个,也可以选ssh的)
- 输入一下你登陆的系统和仓库的账号密码就可以了
- 然后确定
比如我的Gitee用户名是code_ant,登录Gitee密码是xxxxx。
凭据,就相当于一个字典配置,或者说是一个配置文件,需要的时候就拿来用就可以了。比如我配了一个Gitee的账号密码,那么在我拉取代码的时候,就需要用到。那什么时候拉取代码呢?往下看…
到这里,配置Jenkins就完成了☺里入坑又进了一步
Jenkins使用
1、创建一个任务
2、配置任务
- 随便写一个名字就可以了
- 选择流水线的方式构建项目
- 选择流水线之后,确定
啊?为啥选择流水线?因为本人我暂时就只会流水线的方式🐕🐶
3、配置流水线
- 描述。随便写不写都可以的了
- 选择脚本从项目从获取
- 选择Git,配置Git从那个仓库下载项目的路径
- 选择刚刚配置好的凭据
- 选择流水线语法,生成流水线代码
- 选择从版本控制
- 配置一下Git
- 然后生成流水线脚本
- 在项目的根目录创建Jenkinsfile文件,然后改一下脚本结构,将生成的脚本复制进去就可以了。如下是我改好的脚本
Jenkinsfile
//git凭证Id
def git_auth = "90c056cd-dc71-42e4-a67d-522403109139"
//git的项目地址
def git_url = "https://gitee.com/li_shi_sheng/k-2000.git"
//git拉取的分支
def git_branch="master"
node{
stage('拉取代码'){
checkout([$class: 'GitSCM', branches: [[name: "*/${git_branch}"]], extensions: [], userRemoteConfigs: [[credentialsId: "${git_auth}", url: "${git_url}"]]])
}
}
点击构建项目
拉取代码到Jenkins成功
在Jenkins的workspace目录,查看到代码已经拉取到Jenkins了
Jenkins是从远程仓库拉取到Jenkins的workspace目录的
童鞋,你离自动化部署微服务又进了一步,恭喜哈。想要持续关注自动化部署微服务更多,请关注“Jenkins+Docker自动化部署微服务”专栏😘
你敢跟着我学,我就敢教。😉欢迎入坑(小白教小白,等于大白)(狗头保命🐕🐶)
至少一周更新一篇,工作不忙的时候,可以再肝几篇。👍