通过脚本推送Docker镜像

sh脚本:

#!/bin/bash

wars=("war包名")

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/ihr/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=("war包名")
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/ihr/$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

FROM ctg-registry-vpc.cn-shenzhen.cr.aliyuncs.com/ihr/服务名:v20240704172002

RUN rm -rf /usr/local/tomcat/服务名-1.0-SNAPSHOT.war

bash 复制代码
FROM ctg-registry-vpc.cn-shenzhen.cr.aliyuncs.com/ihr/服务名:v20240704172002
RUN rm -rf /usr/local/tomcat/服务名-1.0-SNAPSHOT.war
相关推荐
Escalating_xu28 分钟前
【Python】使用库:标准库、第三方库、pip、项目实战与程序打包
java·python·pip
Wang's Blog1 小时前
Java框架 SpringCloud 快速入门: 过滤器链执行顺序
java·spring cloud
砚底藏山河1 小时前
量化实战:回测数据底座快照与版本管理进阶
java·大数据·python·金融·maven
Cc.Y1 小时前
Java零基础入门:封装与继承 —— 从“裸奔“到“穿衣服“,从“重复造轮子“到“站在巨人肩膀上“
java·开发语言
Escalating_xu2 小时前
【C 语言】深入理解指针(4):回调函数、qsort、void * 与泛型排序的模拟实现
java·c语言·开发语言
Shaoshing2 小时前
雪花算法
java
小小龙学IT2 小时前
Kubernetes 深度实践:架构、API 与避坑指南
容器·架构·kubernetes
w_zero_one2 小时前
链表(4)
java·数据结构·算法
见叶之秋2 小时前
C++ 泛型世界的两块拼图:容器适配器与仿函数
java·开发语言
MayBaymax3 小时前
MQ 基础概念与架构
java·中间件·架构·java-rocketmq