Files
macos-tools/harbor/scripts/harbor-sync.sh
gaoandClaude 8f47f4e9ea feat: 完善 DevOps 工具链配置和优化 Harbor 服务
- 更新 Gitea runner 配置,支持优化的 CI/CD 环境
- 完善 Harbor HTTPS 配置和远程访问支持
- 优化 Harbor 日志配置,改用 json-file 驱动
- 添加 Docker 构建加速和代理缓存脚本
- 新增完整的文档和使用指南
- 添加 AI 开发工具集成配置

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
2025-11-03 06:39:53 +08:00

45 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
# Harbor 镜像同步脚本
HARBOR_REGISTRY="192.168.1.83:8443"
if [ $# -eq 0 ]; then
echo "用法: harbor-sync <镜像名>[:<标签>] [目标项目]"
echo ""
echo "示例:"
echo " harbor-sync golang:1.21-alpine tools"
echo " harbor-sync prom/prometheus:latest tools"
echo " harbor-sync postgres:15-alpine cache"
echo ""
echo "📋 可用项目:"
echo " ljwx - 自研项目"
echo " tools - 工具镜像"
echo " cache - 缓存镜像"
echo " library - 通用镜像"
exit 1
fi
IMAGE="$1"
PROJECT="${2:-tools}"
IMAGE_NAME=$(echo "$IMAGE" | cut -d':' -f1 | sed 's|.*/||')
IMAGE_TAG=$(echo "$IMAGE" | cut -d':' -f2)
if [ "$IMAGE_TAG" = "$IMAGE_NAME" ]; then
IMAGE_TAG="latest"
fi
HARBOR_IMAGE="${HARBOR_REGISTRY}/${PROJECT}/${IMAGE_NAME}:${IMAGE_TAG}"
echo "📦 同步镜像: $IMAGE → $HARBOR_IMAGE"
# 拉取镜像
docker pull "$IMAGE"
# 标记镜像
docker tag "$IMAGE" "$HARBOR_IMAGE"
# 推送镜像
docker push "$HARBOR_IMAGE"
echo "✅ 同步完成"
echo "🔗 Harbor 镜像: $HARBOR_IMAGE"