docker-vitepress/build.sh
2024-11-03 12:26:45 +08:00

36 lines
930 B
Bash
Executable File

#!/bin/bash
# 加载 .env 文件里的变量
export $(grep -v '^#' .env | xargs)
# 每次构建前执行 npx 打包
echo "开始执行 npx 打包..."
npx vitepress build docs # 请根据你的项目调整这个命令
if [ $? -ne 0 ]; then
echo "npx 打包失败,终止构建镜像。"
exit 1
fi
# 构建新的镜像
echo "构建新的镜像: $IMAGE_NAME:$IMAGE_TAG"
docker build -t $IMAGE_NAME:$IMAGE_TAG .
if [ $? -ne 0 ]; then
echo "镜像构建失败。"
exit 1
fi
echo "镜像构建成功: $IMAGE_NAME:$IMAGE_TAG"
# 清理镜像:删除名称为 $IMAGE_NAME 且标签不是 $IMAGE_TAG 的旧镜像
echo "清理旧镜像..."
OLD_IMAGES=$(docker images --filter=reference="$IMAGE_NAME:*" --format '{{.Repository}}:{{.Tag}}' | grep -v "$IMAGE_NAME:$IMAGE_TAG")
if [ -n "$OLD_IMAGES" ]; then
echo "删除以下旧镜像:"
echo "$OLD_IMAGES"
# 删除旧镜像
echo "$OLD_IMAGES" | xargs docker rmi -f
fi