refactor(scripts): 优化docker部署脚本以支持固定镜像ID
修改部署脚本以优先使用固定镜像ID,若不存在则回退到原有逻辑
This commit is contained in:
parent
d245d3bce8
commit
a75dac591f
|
|
@ -6,19 +6,23 @@ IMAGE="marketing-system-data-tool"
|
||||||
TAG="$ENV_NAME"
|
TAG="$ENV_NAME"
|
||||||
PORT="${PORT:-8077}"
|
PORT="${PORT:-8077}"
|
||||||
cd "$ROOT_DIR"
|
cd "$ROOT_DIR"
|
||||||
|
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
|
if docker image inspect "$IMAGE:$TAG" >/dev/null 2>&1; then
|
||||||
echo "使用已有镜像作为缓存: $IMAGE:$TAG"
|
|
||||||
DOCKER_BUILDKIT=1 docker build \
|
DOCKER_BUILDKIT=1 docker build \
|
||||||
--build-arg BUILDKIT_INLINE_CACHE=1 \
|
--build-arg BUILDKIT_INLINE_CACHE=1 \
|
||||||
--build-arg GOPROXY="${GOPROXY:-https://goproxy.cn,direct}" \
|
--build-arg GOPROXY="${GOPROXY:-https://goproxy.cn,direct}" \
|
||||||
--cache-from "$IMAGE:$TAG" -t "$IMAGE:$TAG" -f Dockerfile .
|
--cache-from "$IMAGE:$TAG" -t "$IMAGE:$TAG" -f Dockerfile .
|
||||||
else
|
else
|
||||||
echo "镜像不存在,开始构建: $IMAGE:$TAG"
|
|
||||||
DOCKER_BUILDKIT=1 docker build \
|
DOCKER_BUILDKIT=1 docker build \
|
||||||
--build-arg BUILDKIT_INLINE_CACHE=1 \
|
--build-arg BUILDKIT_INLINE_CACHE=1 \
|
||||||
--build-arg GOPROXY="${GOPROXY:-https://goproxy.cn,direct}" \
|
--build-arg GOPROXY="${GOPROXY:-https://goproxy.cn,direct}" \
|
||||||
-t "$IMAGE:$TAG" -f Dockerfile .
|
-t "$IMAGE:$TAG" -f Dockerfile .
|
||||||
fi
|
fi
|
||||||
|
USE_IMAGE="$IMAGE:$TAG"
|
||||||
|
fi
|
||||||
mkdir -p log storage/export
|
mkdir -p log storage/export
|
||||||
CID_NAME="marketing-data-$ENV_NAME"
|
CID_NAME="marketing-data-$ENV_NAME"
|
||||||
RUNNING=$(docker inspect -f '{{.State.Running}}' "$CID_NAME" 2>/dev/null || echo false)
|
RUNNING=$(docker inspect -f '{{.State.Running}}' "$CID_NAME" 2>/dev/null || echo false)
|
||||||
|
|
@ -40,5 +44,5 @@ docker run -d \
|
||||||
-v "$ROOT_DIR/storage/export:/app/storage/export" \
|
-v "$ROOT_DIR/storage/export:/app/storage/export" \
|
||||||
-v "$ROOT_DIR/log:/app/log" \
|
-v "$ROOT_DIR/log:/app/log" \
|
||||||
-v "$CONFIG_PATH:/app/server/config.yaml:ro" \
|
-v "$CONFIG_PATH:/app/server/config.yaml:ro" \
|
||||||
"$IMAGE:$TAG"
|
"$USE_IMAGE"
|
||||||
echo "container: $CID_NAME image: $IMAGE:$TAG port: $PORT"
|
echo "container: $CID_NAME image: $USE_IMAGE port: $PORT"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue