refactor(scripts): 优化docker部署脚本以支持固定镜像ID

修改部署脚本以优先使用固定镜像ID,若不存在则回退到原有逻辑
This commit is contained in:
zhouyonggao 2025-12-02 17:18:40 +08:00
parent d245d3bce8
commit a75dac591f
1 changed files with 17 additions and 13 deletions

View File

@ -6,18 +6,22 @@ IMAGE="marketing-system-data-tool"
TAG="$ENV_NAME"
PORT="${PORT:-8077}"
cd "$ROOT_DIR"
if docker image inspect "$IMAGE:$TAG" >/dev/null 2>&1; then
echo "使用已有镜像作为缓存: $IMAGE:$TAG"
FIXED_IMG_ID="254602263cd6"
if docker image inspect "$FIXED_IMG_ID" >/dev/null 2>&1; then
USE_IMAGE="$FIXED_IMG_ID"
else
if docker image inspect "$IMAGE:$TAG" >/dev/null 2>&1; then
DOCKER_BUILDKIT=1 docker build \
--build-arg BUILDKIT_INLINE_CACHE=1 \
--build-arg GOPROXY="${GOPROXY:-https://goproxy.cn,direct}" \
--cache-from "$IMAGE:$TAG" -t "$IMAGE:$TAG" -f Dockerfile .
else
echo "镜像不存在,开始构建: $IMAGE:$TAG"
else
DOCKER_BUILDKIT=1 docker build \
--build-arg BUILDKIT_INLINE_CACHE=1 \
--build-arg GOPROXY="${GOPROXY:-https://goproxy.cn,direct}" \
-t "$IMAGE:$TAG" -f Dockerfile .
fi
USE_IMAGE="$IMAGE:$TAG"
fi
mkdir -p log storage/export
CID_NAME="marketing-data-$ENV_NAME"
@ -40,5 +44,5 @@ docker run -d \
-v "$ROOT_DIR/storage/export:/app/storage/export" \
-v "$ROOT_DIR/log:/app/log" \
-v "$CONFIG_PATH:/app/server/config.yaml:ro" \
"$IMAGE:$TAG"
echo "container: $CID_NAME image: $IMAGE:$TAG port: $PORT"
"$USE_IMAGE"
echo "container: $CID_NAME image: $USE_IMAGE port: $PORT"