Files
user_service/api_template/release.sh
2025-10-09 11:52:28 +08:00

42 lines
1.2 KiB
Bash
Executable File
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
set -e # 当任何命令失败时立即退出脚本
# 定义镜像名称和标签
IMAGE_NAME="user-template-api"
IMAGE_TAG="1.0.0"
FULL_IMAGE="${IMAGE_NAME}:${IMAGE_TAG}"
TAR_FILE="${IMAGE_NAME}-${IMAGE_TAG}.tar"
echo "开始删除现有镜像 ${FULL_IMAGE}..."
if sudo docker rmi -f "${FULL_IMAGE}" >/dev/null 2>&1; then
echo "镜像 ${FULL_IMAGE} 删除成功"
else
echo "镜像 ${FULL_IMAGE} 不存在,跳过删除步骤"
fi
echo "开始构建新镜像 ${FULL_IMAGE}..."
if sudo docker build -t "${FULL_IMAGE}" .; then
echo "镜像 ${FULL_IMAGE} 构建成功!"
else
echo "错误:镜像构建失败" >&2
exit 1
fi
echo "开始处理镜像压缩包..."
# 如果存在同名压缩包则删除
if [ -f "${TAR_FILE}" ]; then
echo "发现现有压缩包 ${TAR_FILE},正在删除..."
rm -f "${TAR_FILE}"
fi
# 打包镜像为tar文件
echo "开始将镜像 ${FULL_IMAGE} 打包为 ${TAR_FILE}..."
if sudo docker save -o "${TAR_FILE}" "${FULL_IMAGE}"; then
echo "镜像打包成功!生成文件:${TAR_FILE}"
# 添加最高级别的可读写权限
sudo chmod 777 "${TAR_FILE}"
echo "已为 ${TAR_FILE} 设置最高权限777"
else
echo "错误:镜像打包失败" >&2
exit 1
fi