From 891d7f473b0a0befafa0c8a2b08088e5f29b0e34 Mon Sep 17 00:00:00 2001 From: hailin Date: Sat, 14 Jun 2025 22:59:09 +0800 Subject: [PATCH] . --- build.sh | 38 +++++++++++++++++++++++++++++++++----- 1 file changed, 33 insertions(+), 5 deletions(-) diff --git a/build.sh b/build.sh index fe4a075..cc07a16 100644 --- a/build.sh +++ b/build.sh @@ -1,13 +1,41 @@ -# 1. 构建镜像(名字直接叫 cradle) +#!/bin/bash + +set -e # 构建失败就退出 + +IMAGE_NAME="cradle:latest" +CONTAINER_NAME="Cradle" + +echo "🔍 检查旧容器是否存在..." +if docker ps -a --format '{{.Names}}' | grep -Eq "^${CONTAINER_NAME}\$"; then + echo "🛑 停止旧容器: $CONTAINER_NAME" + docker stop "$CONTAINER_NAME" + echo "❌ 删除旧容器: $CONTAINER_NAME" + docker rm "$CONTAINER_NAME" +fi + +echo "🧹 删除旧镜像(如果存在)..." +if docker images --format '{{.Repository}}:{{.Tag}}' | grep -Eq "^cradle:latest\$"; then + docker rmi -f "$IMAGE_NAME" +fi + +echo "⬇️ 拉取最新代码..." +git pull + +echo "🧼 清除 .next..." rm -rf apps/blogai/.next -docker build \ + +echo "📦 构建镜像..." +if ! docker build \ --build-arg http_proxy=http://127.0.0.1:7890 \ --build-arg https_proxy=http://127.0.0.1:7890 \ --build-arg BLOGAI_HOST=ai.szaiai.com \ --no-cache \ --network=host \ -t cradle:latest \ - -f apps/blogai/Dockerfile . + -f apps/blogai/Dockerfile .; then + echo "❌ 构建失败,退出" + exit 1 +fi -# 2. 运行容器(容器名叫 Cradle) -docker run -d --name Cradle -p 3008:3008 --restart always cradle:latest \ No newline at end of file +echo "🚀 启动新容器..." +docker run -d --name Cradle -p 3008:3008 --restart always cradle:latest