Go 项目创建一个自动上传镜像的脚本到阿里云仓库

12 min read

根据阿里云镜像仓库文档,我们可以为 Go 项目创建一个自动上传镜像的脚本。以下是一个简单的 Bash 脚本示例:

#!/bin/bash

# 设置变量
username="15387******@qq.com"
password="your_password"
registry="registry.cn-hangzhou.aliyuncs.com"
repository="bytenote-repository/gpt"
image_version="your_image_version"
image_id="your_image_id"

# 登录阿里云 Docker Registry
echo "登录阿里云 Docker Registry"
docker login --username=$username --password=$password $registry

# 从 Registry 中拉取镜像
echo "从 Registry 中拉取镜像"
docker pull $registry/$repository:$image_version

# 构建 Go 项目并创建 Docker 镜像
echo "构建 Go 项目并创建 Docker 镜像"
# 在这里添加您的 Go 项目构建命令,例如:go build -o myapp
docker build -t $repository:$image_version .

# 将镜像推送到 Registry
echo "将镜像推送到 Registry"
docker tag $repository:$image_version $registry/$repository:$image_version
docker push $registry/$repository:$image_version


echo "镜像上传完成"

请确保替换脚本中的 your_passwordyour_image_versionyour_image_id 为您实际的密码、镜像版本号和镜像 ID。您还需要根据实际情况修改 Go 项目的构建命令。

保存该脚本为 upload_image.sh,并在终端中运行 chmod +x upload_image.sh 以使其可执行。然后,您可以通过运行 ./upload_image.sh 来执行脚本。