尚品汇-Jenkins部署构建服务模块、Linux快照备份(五十七)

ops/2024/9/23 23:01:23/

目录:

(1)构建作业(server-gateway)

(2)构建service_product模块

(3)演示添加新代码

(4)学会使用linux快照

 

(1)构建作业(server-gateway)

pom加上一个打包的插件,指定打包的名称 

 

 

 

点击创建一个新任务

进入创建项目类型选择页面

我的视图中找新建任务

server-gateway

填好信息点击“确认”

配置“General”

配置“源码管理”

填写源码的git地址(gmall-parent项目git地址)

 

点击添加jenkins 添加git用户,git的用户名与密码

 

构建作业

注:docker.sh,其他服务都一样,只是调整以下三项配置:

cd ./server-gateway   //当前目录为:gmall-parent
service_name="server-gateway"        //当前服务名称:server-gateway
service_prot=80
                   //当前服务端口:80
 

选择“执行shell”

shell命令如下:

#!/bin/bash
#maven打包
mvn clean package
echo 'package ok!'
echo 'build start!'
cd ./server-gateway
service_name="server-gateway"
service_port=80
#查看镜像id
IID=$(docker images | grep "$service_name" | awk '{print $3}')
echo "IID $IID"
if [ -n "$IID" ]
thenecho "exist $SERVER_NAME image,IID=$IID"#删除镜像docker rmi -f $service_nameecho "delete $SERVER_NAME image"#构建docker build -t $service_name .echo "build $SERVER_NAME image"
elseecho "no exist $SERVER_NAME image,build docker"#构建docker build -t $service_name .echo "build $SERVER_NAME image"
fi
#查看容器id
CID=$(docker ps | grep "$SERVER_NAME" | awk '{print $1}')
echo "CID $CID"
if [ -n "$CID" ]
thenecho "exist $SERVER_NAME container,CID=$CID"#停止docker stop $service_name#删除容器docker rm $service_name
elseecho "no exist $SERVER_NAME container"
fi
#启动
docker run -d --name $service_name --net=host -p $service_port:$service_port $service_name
#查看启动日志
#docker logs -f  $service_name
service-product:
#!/bin/bash
#maven打包
mvn clean package
echo 'package ok!'
echo 'build start!'
cd ./service/service-product
service_name="service-product"
service_port=8206
#查看镜像id
IID=$(docker images | grep "$service_name" | awk '{print $3}')
echo "IID $IID"
if [ -n "$IID" ]
thenecho "exist $SERVER_NAME image,IID=$IID"#删除镜像docker rmi -f $service_nameecho "delete $SERVER_NAME image"#构建docker build -t $service_name .echo "build $SERVER_NAME image"
elseecho "no exist $SERVER_NAME image,build docker"#构建docker build -t $service_name .echo "build $SERVER_NAME image"
fi
#查看容器id
CID=$(docker ps | grep "$SERVER_NAME" | awk '{print $1}')
echo "CID $CID"
if [ -n "$CID" ]
thenecho "exist $SERVER_NAME container,CID=$CID"#停止docker stop $service_name#删除容器docker rm $service_name
elseecho "no exist $SERVER_NAME container"
fi
#启动
docker run -d --name $service_name --net=host -p $service_port:$service_port $service_name
#查看启动日志
#docker logs -f  $service_name

注:--net=host docker4种网络模式之一

host模式,使用--net=host指定。

使用宿主机的ip和端口

 

保存上面的构建作业

参考文档:https://www.cnblogs.com/gispathfinder/p/5871043.html

构建

构建作业之后,就可以执行构建过程了。

执行构建过程

镜像就有了 

 容器也正常运行了

构建结构

第一列是 "上次构建状态显示",是一个圆形图标,一般分为四种:

蓝色:构建成功;

黄色:不确定,可能构建成功,但包含错误;

红色:构建失败;

灰色:项目从未构建过,或者被禁用;

如上显示蓝色,表示构建成功。

注意:手动触发构建的时间与自动定时构建的时间互不影响。

查看控制台输出

日志内容:

(2)构建service_product模块

引入打包插件 

 

 

 

注:其他模块构建方式一样,可选择“复制”上一个模块构建,修改配置即可,如图

 

复制之后,会把server-gateway的构建步骤拿过来,进行修改即可 

修改shell 

这个时候就可以访问service-product里面的接口了:可以直接访问内部的接口

 通过前面的网关80访问这个 service-product内部接口,网关进行了过滤

通过前面的网关访问这个 service-product接口

(3)演示添加新代码

 

 

(4)学会使用linux快照

通过不备份快照,来防止我们把环境搞错了,搞错后直接回复到正常的快照 

 

 快照管理:

 

2024-09-22 


http://www.ppmy.cn/ops/115006.html

相关文章

Android 后台服务之Persistent 属性

在 Android 开发中,有时我们需要后台服务持续运行,以保持应用的某些功能。例如,音乐播放器需要在后台播放音乐,或者健康应用需要持续跟踪用户的运动数据。后台服务是 Android 中的一种组件,它不与用户界面交互,能够在后台执行长时间运行的任务。由于 Android 系统的资源管…

微信抢红包设计

包几个红包,发红包的总金额塞钱进红包,弹出支付的界面,支付完之后就会被发到 群里抢拆红包,才是真正的抢红包 红包金额怎么分配 每个人至少抢到1分钱人数抢到的金额之和就应该是红包的总金额一个人抢的红包不应该极度的大&#…

【Python报错已解决】AttributeError: ‘WindowsPath‘ object has no attribute ‘rstrip‘

🎬 鸽芷咕:个人主页 🔥 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 专栏介绍 在软件开发和日常使用中,BUG是不可避免的。本专栏致力于为广大开发者和技术爱好者提供一个关于BUG解决的经…

快来看看!如何利用工具轻松实现自动加好友

大家都知道,手动添加大量好友不仅耗时,还很容易出错。这时候,借助一些工具就显得尤为重要! 今天,就给大家分享一个多微管理工具,让你实现自动加好友。 首先,在多微管理工具上登录你的微信账号…

清空当前机器所有Docker容器和镜像

sudo docker stop $(sudo docker ps -aq) sudo docker rm $(sudo docker ps -aq) sudo docker rmi $(sudo docker images -q)删除当前机器上的所有Docker镜像是一个高风险操作,因为它会删除所有镜像,包括那些可能正在被容器使用的镜像。在执行此操作之前…

【Verilog学习日常】—牛客网刷题—Verilog快速入门—VL24

边沿检测 有一个缓慢变化的1bit信号a,编写一个程序检测a信号的上升沿给出指示信号rise,当a信号出现下降沿时给出指示信号down。 注:rise,down应为单脉冲信号,在相应边沿出现时的下一个时钟为高,之后恢复到0&#xff0…

北斗盒子TD20——水上作业的安全防线,落水报警守护生命

在广阔的水域上,水上作业人员面临着多变的环境和潜在的风险。近年来,随着海洋经济的快速发展,海上作业活动日益频繁,人员安全问题也日益凸显。传统的海上救援手段存在诸多不足,如救援响应时间长、定位不准确等。 水上…

三线城市的女玩家们不想“谈恋爱”,小游戏掘金新蓝海

女性玩家的游戏选项只有乙游吗? 在7月举办的微信小游戏开发者大会上,微信小游戏团队公布了一系列最新运营数据。数据显示,微信小游戏的用户规模已突破十亿大关。从用户画像来看,其年龄层主要集中在24至40岁之间,且三线…