添加 Docker 镜像推送脚本
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -549,3 +549,6 @@ backend/desc.md
|
|||||||
|
|
||||||
# Claude Code
|
# Claude Code
|
||||||
.claude/
|
.claude/
|
||||||
|
|
||||||
|
# Registry credentials
|
||||||
|
.env.registry
|
||||||
|
|||||||
37
backend/scripts/push-image.sh
Executable file
37
backend/scripts/push-image.sh
Executable file
@@ -0,0 +1,37 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
|
ENV_FILE="${SCRIPT_DIR}/../.env.registry"
|
||||||
|
REGISTRY="registry.fishestlife.com"
|
||||||
|
|
||||||
|
if [[ ! -f "$ENV_FILE" ]]; then
|
||||||
|
echo "错误:找不到 ${ENV_FILE}"
|
||||||
|
echo "请从模板创建并填入账号密码"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# shellcheck source=/dev/null
|
||||||
|
source "$ENV_FILE"
|
||||||
|
|
||||||
|
if [[ -z "${REGISTRY_USER:-}" || -z "${REGISTRY_PASS:-}" ]]; then
|
||||||
|
echo "错误:REGISTRY_USER 或 REGISTRY_PASS 未设置"
|
||||||
|
echo "请编辑 ${ENV_FILE} 填入凭证"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "登录镜像仓库 ${REGISTRY} ..."
|
||||||
|
echo "$REGISTRY_PASS" | docker login "$REGISTRY" -u "$REGISTRY_USER" --password-stdin
|
||||||
|
|
||||||
|
# 推送参数:镜像名:标签
|
||||||
|
IMAGE="${1:-}"
|
||||||
|
if [[ -z "$IMAGE" ]]; then
|
||||||
|
echo "用法:$0 <镜像名:标签>"
|
||||||
|
echo "示例:$0 user-service:latest"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "推送镜像 ${IMAGE} ..."
|
||||||
|
docker push "${REGISTRY}/${IMAGE}"
|
||||||
|
|
||||||
|
echo "完成:${REGISTRY}/${IMAGE}"
|
||||||
Reference in New Issue
Block a user