微服务与Docker的整合与测试 Eclipse与GitHub的整合——本地Git仓库中的代码push至GitHub 微服务的手动与自动部署(Jenkins自动部署)

文章目录


#学习要求
#任务一:Docker Compose编排工具
#任务二:微服务与Docker的整合
#任务三:环境搭建及镜像准备
#任务四:微服务的手动部署
#任务五:使用Jenkins自动部署微服务
#遇到的问题及解决方案

1.掌握Docke Compose编排工具的使用
2.掌握微服务项目于Docker的整合方式
3.掌握微服务项目的部署方式
项目整体结构:
在这里插入图片描述

项目概述:
本项目通过一个名为microservice_ mallmanagement的Maven父项目构建了四个子项目。
microservice eureka-server:用于服务注册发现。
microservice-gateway-zuul: 用于API网关。
microservice-orderservice: 用于订单管理服务。
microservice-userservice: 用于用户管理服务。
其中的microservice- orderservice和microservice-userservice就是实际需要开发的微服务项目,也是商城管理项目的核心;而另外的microservice eureka-server和microservice-gateway-zuul子项目则属于辅助服务。
任务一:Docker Compose编排工具
Docker Compose,俗称Docker编排 工具,是用来定义和运行多容器应用的Docker工具。通过该编排工具,可以使用yml (或yaml) 文件来配置应用程序服务,然后只需要一-条简单的服务部署指令就可以从配置中创建并启动所有服务。
1.docker compose的安装于卸载
安装条件:已安装docker
在这里插入图片描述
2.使用命令安装compose
在这里插入图片描述
安装完成
在这里插入图片描述
3.更改docker compose的可执行文件权限,验证安装版本信息
在这里插入图片描述
安装完成
任务二:微服务与Docker的整合
1.添加docke file文件,具体信息如下

在这里插入图片描述
2.添加dockerfile-maven 插件,分别添加在每个子项目模块中
在这里插入图片描述
microservice-userservice:
在这里插入图片描述
Microservice-orderservice:
在这里插入图片描述
microservice eureka-server:
在这里插入图片描述
microservice-gateway-zuul:
在这里插入图片描述
3.添加docker-compose.yml编排文件
在这里插入图片描述
任务三:环境搭建及镜像准备
1.搭建本地私有仓库,仓库服务地址为192.168.1.136:5000
在这里插入图片描述
2.下载安装应用编译工具JDK
在这里插入图片描述
3.自定义文件目录,解压软件包
在这里插入图片描述
4.配置环境变量,使用source /etc/profile命令使其生效
在这里插入图片描述
5.安装打包工具maven,下载解压
在这里插入图片描述
6.查看解压好的安装包
在这里插入图片描述
7.配置环境变量
在这里插入图片描述
8.验证是否安装配置成功
在这里插入图片描述
9.镜像准备
配置服务认证信息,修改本地私有仓库地址及登录认证用户

在这里插入图片描述


在这里插入图片描述
10.进行打包,构建推送镜像

在这里插入图片描述
在这里插入图片描述
验证生成的镜像
在这里插入图片描述
在本地仓库中查看
在这里插入图片描述
任务四:微服务的手动部署
步骤一:非集群环境下的部署
此次部署的微服务所需的镜像都存放在本地私有镜像仓库,并且本地私有仓库配置有用户认证,所以想要通过本地私有仓库的镜像部署服务,就必须先登录认证,获取镜像的使用权限(DockerHub远程仓库镜像则不需要登录认证)。
1.登录私有仓库
在这里插入图片描述
2.部署服务
在这里插入图片描述
打印处启动信息
在这里插入图片描述
查看项目启动情况
在这里插入图片描述
3.在注册中心查看服务详情
在这里插入图片描述
步骤二:集群环境下部署服务
在集群环境下部署服务需要将之前准备的另外两个工作节点worker1和worker2机器全部启动,并且一定要确保manager1、worker1 和worker2都已加入同-一个集群中,同时manager1、worker1和worker2中都已添加了本地私有仓库的服务地址。
1.查看网络列表详情
在这里插入图片描述
2.自定义以overlay为驱动的网络,指定子网地址以10.0开头
在这里插入图片描述
3.在配置文件中添加服务信息
在这里插入图片描述
在这里插入图片描述

4.修改编排文件信息,将所有服务启动时的网络设置为自定义网络进行网络管理
在这里插入图片描述
5.集群服务部署
登录私有仓库
在这里插入图片描述
6.部署服务
在这里插入图片描述
7.查看服务列表详情
在这里插入图片描述
8.查看整个微服务在集群节点上的分配和启动情况
9.查看某个具体服务从启动到运行的整个日志详情
在这里插入图片描述
10.微服务测试
通过visualizer集群服务可视化工具查看服务启动情况
在这里插入图片描述
通过Eureka服务注册中心查看服务启动情况
在这里插入图片描述
11.将数据库数据初始化
安装mysql可视化工具
在这里插入图片描述
12.创建数据表,准备测试数据
在这里插入图片描述
13.测试微服务
访问http://192.168.1.136:8030/swagger-ui.html
在这里插入图片描述
访问http://192.168.1.136:7900/swagger-ui.html
在这里插入图片描述
14.测试验证API网关服务
访问http://192.168.1.136:8050/order-service/order/findOrders/1
在这里插入图片描述
访问http://192.168.1.136:8050/user-service/user/findOrders/shitou
在这里插入图片描述
任务五:使用Jenkins自动部署微服务
介绍: Jenkins是一个基于Java开发的开源软件项目,用于支持构建、部署和自动化任何项目。在实际开发中,通常将它作为项目的持续集成、部署工具来使用。其使用场景可以通过-张图来表达:
在这里插入图片描述
Jenkins进行项目集成管理的流程:

(1)开发人员将更改后的代码提交到代码仓库中(如GitHub);
(2)持续集成工具Jenkins会定期(或人工手动)从代码仓库拉取指定项目;
(3) Jenkins工具会根据具体配置,自动化打包、构建镜像、推送镜像并最终生成Docker容器来启动服务,形成对应的测试环境;
(4)测试人员会在对应的测试环境下测试Jenkins自动化集成、部署的服务:
(5)当项目测试成功后,可以使用Jenkins工具将测试成功的项目自动构建到发布环境下,也可以人工手动部署到发布环境下。
步骤一:Jenkins的安装
1.下载Jenkins,上传至管理节点的某个目录
在这里插入图片描述
2.更改端口,并启动服务
在这里插入图片描述

3.Jenkins初始化安装,初始化认证密码,输入指定密码,单击继续
在这里插入图片描述

4.初始化插件安装
在这里插入图片描述
5.选择安装推荐的插件进行安装
在这里插入图片描述
6.创建管理员用户,输入管理员信息
在这里插入图片描述
7.编辑好管理员信息之后,保存修改,进入Jenkins主界面
在这里插入图片描述
在这里插入图片描述
步骤二:Jenkins集成插件配置
1.安装maven插件,依次单击系统管理–插件管理
在这里插入图片描述
2.系统全局插件配置
jdk配置
在这里插入图片描述
Maven配置
在这里插入图片描述
Docker配置
在这里插入图片描述
步骤三:eclipse上传项目到git
准备工作1.在github官网注册账号
2.eclips中安装git插件
1.在eclipse中配置user的相关信息
window->preferences->Team->Git->Configuration->UserSettings
点击AddEntry
在这里插入图片描述
3.根据提示填写用户信息
在这里插入图片描述
4.填写完点击OK,再次点击AddEntry,填写邮箱地址
在这里插入图片描述
5.添加完地址后Apply ->OK
在这里插入图片描述
7.使用git插件为项目创建本地仓库
右击要上传的项目->Team->Share Project…->Git
在这里插入图片描述
8.向本地仓库提交项目,填写 Commit信息
右击项目->Team->Commit
在这里插入图片描述
提交完之后就会看到项目中出现小黄桶的标识,则说明将项目推送到本地仓库
在这里插入图片描述
9.在github网站中新建一个仓库
在这里插入图片描述
10.右击项目->Team->remote->push

在这里插入图片描述
11.将本地仓库项目内容推送到远程仓库(github)
右击项目->Team->remote->push
在这里插入图片描述
12.选择master项,点击finish

在这里插入图片描述
13.登录到github,查看推送的项目

在这里插入图片描述
步骤四:服务自动化部署
1.构建新任务

在这里插入图片描述
2.点击确定则会跳转到配置界面,点击源码配置,添加源码仓库地址
在这里插入图片描述

3.构建触发器
在这里插入图片描述
4.服务发布配置,设置集群环境下服务部署命令,配置完成之后,点击保存,完成配置
在这里插入图片描述
5.完成保存之后就会跳转到任务主页,单击任务主界面左侧的立即构建,会触发一次构建项目的动作,然后整个服务就会进入自动部署过程
在这里插入图片描述
项目部署过程
在这里插入图片描述
单击构建历史的倒三角,选择控制台输出来查看构建过程中的输出信息
在这里插入图片描述
构建成功
在这里插入图片描述
在Jenkins服务端查看输出日志信息
在这里插入图片描述
点击构建历史查看构建信息
在这里插入图片描述
7.项目测试,按照之前手动部署项目后的测试方法,进行项目测试
测试微服务
访问http://192.168.1.136:8030/swagger-ui.html
在这里插入图片描述
访问http://192.168.1.136:7900/swagger-ui.html
在这里插入图片描述
8.测试验证API网关服务
访问http://192.168.1.136:8050/order-service/order/findOrders/1
在这里插入图片描述
访问http://192.168.1.136:8050/user-service/user/findOrders/shitou
在这里插入图片描述
至此首次微服务项目与docker的集成与部署完成

遇到的问题及解决方案
问题一:使用命令安装compose编排工具时出错
在这里插入图片描述
v
解决方案:检测到系统中未安装curl,所以首先安装curl,然后安装命令,compose成功安装
在这里插入图片描述
在这里插入图片描述
问题二:Jenkins自动部署时,自动安装maven插件出错
在这里插入图片描述

解决方案:手动下载maven插件,选择上传
在这里插入图片描述
上传之后发现依然安装报错,是由于缺少依赖,缺少javadoc插件依赖
解决方案:用同样的方法上传安装javadoc插件,然后安装maven插件,安装成功
在这里插入图片描述
在这里插入图片描述
在已安装的插件信息中可以查看到安装的插件及其版本信息
在这里插入图片描述

问题三:在Jensins自动化部署,配置源码仓库地址时报错
在这里插入图片描述
问题分析:连接不到远程仓库地址,是因为运行主机上没有安装git

解决方案:
1.在管理节点上安装git
在这里插入图片描述
2.查看git安装位置
在这里插入图片描述
3.在Jenkins的全局配置中添加git配置
在这里插入图片描述
4.保存配置之后重启Jensins,可以看到无报错信息

在这里插入图片描述
问题五:自动化部署完成之后,选择立即构建,构建失败
在这里插入图片描述
解决方案:
1.查看控制台报错信息可以发现是由于git配置有问题,根据网上查阅资料可以发现是由于没有安装git或者没有配置,但可以确定都已经配置完成,同时也重启了Jensins服务,依然报错,刷新构建了很多次也没用,最终重启整个集群之后,重新构建,错误消失
2.此刻终于可以看到已经连接到远程仓库代码,可以部署服务了
在这里插入图片描述
3.但是又出现了新的错误
在这里插入图片描述
4.查看报错日志信息后发现和Maven配置有关,应该是与Jenkins安装的maven插件有关
在这里插入图片描述
解决方案:更新之前安装的低版本Maven插件,重新构建
在这里插入图片描述
同时保证manage管理节点的内存足够大,这里设置为6G,经历过各种波折,最终自动部署成功

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值