Linux通过自动脚本自动化推送k8s Docker镜像

推送脚本 deploy.sh

#!/bin/bash

wars=("服务")

services=("服务")

nameSpace=hr-x

TAG="v$(date "+%Y%m%d%H%M%S")"

for i in "${!services@}"; do

serverName={services\[i]};

DOCKERFILE="./Docker_$serverName"

imageName="ctg-registry-vpc.cn-shenzhen.cr.aliyuncs.com/目录/serverName:TAG"

2. 构建新镜像(直接使用现有 Dockerfile)

docker build -t imageName . -f DOCKERFILE

3. 推送镜像

docker push $imageName

echo "操作完成:新镜像已推送至 $imageName"

4. 更新容器 -n 命名空间 --record 记录发布节点,方便回滚

kubectl set image deployment/serverName serverName=imageName -n nameSpace --record

kubectl rollout restart deployment/serverName -n nameSpace

done

bash 复制代码
#!/bin/bash

wars=("服务")
services=("服务")
nameSpace=hr-x
TAG="v$(date "+%Y%m%d%H%M%S")"
for i in "${!services[@]}"; do
  serverName=${services[$i]};
  DOCKERFILE="./Docker_$serverName"
  imageName="ctg-registry-vpc.cn-shenzhen.cr.aliyuncs.com/目录/$serverName:$TAG"
  # 2. 构建新镜像(直接使用现有 Dockerfile)
  docker build -t $imageName . -f $DOCKERFILE
  # 3. 推送镜像
  docker push $imageName
  echo "操作完成:新镜像已推送至 $imageName"
  # 4. 更新容器 -n 命名空间 --record 记录发布节点,方便回滚
  kubectl set image deployment/$serverName $serverName=$imageName -n $nameSpace --record
  kubectl rollout restart deployment/$serverName -n $nameSpace
done

DockerFile (Docker_$serverName )

FROM ctg-registry-vpc.cn-shenzhen.cr.aliyuncs.com/目录/服务:v202405101506

RUN rm -rf /usr/local/tomcat/webapps/服务.war

ADD 服务.war /usr/local/tomcat/webapps/

bash 复制代码
FROM ctg-registry-vpc.cn-shenzhen.cr.aliyuncs.com/目录/服务:v202405101506
RUN rm -rf /usr/local/tomcat/webapps/服务.war
ADD 服务.war /usr/local/tomcat/webapps/

需要把服务替换成真是的服务

相关推荐
Li#5 分钟前
web端电商项目自动下单发货评价晒图需要用到的能力
python·自动化
专注搞钱6 分钟前
FAB设备OEE自动化分析工具:月度报表从2天缩短到30秒
运维·自动化
宇晨T2 小时前
BurpSuite实战:WackoPicko敏感目录探测
linux·运维·服务器
杰克逊的日记2 小时前
如何在不影响业务的情况下对K8S集群升级
云原生·容器·kubernetes
月巴月巴白勺合鸟月半2 小时前
在Linux下开发桌面程序
linux·运维·服务器
zh路西法2 小时前
【tmux入门】终端分屏、SSH远程守护与一键启动脚本
linux·运维·ssh·bash
qq_163135753 小时前
Linux 【03-pwd命令超详细教程】
linux
学途路漫漫3 小时前
Ubuntu 24.04 国内网络环境全面优化指南
linux·网络·ubuntu
c238563 小时前
GDB 进程概念详解(下篇)—— 多进程与进阶调试能力
linux·服务器·数据库
逻极3 小时前
Kubernetes 从入门到精通:云原生容器编排
kubernetes·k8s·服务发现·容器编排