gpt4 book ai didi

docker - 如何在 docker 注册表 v2 中标记图像

转载 作者:IT老高 更新时间:2023-10-28 12:43:06 25 4
gpt4 key购买 nike

我们的 CI-CD 中有逻辑标记(通过 REST)暂存图像到 latest(如果测试成功)。这适用于注册表 v1。

我们现在转移到 v2 api,我找不到有关如何将标签“添加”到注册表中现有图像的文档。我的步骤可以带来一些临时图像的“ list ”,但不确定如何添加标签并通过 http 发布它。

我尝试发送以下输入:

  1. "tag": "staging","latest",
  2. "tag": ["staging","latest"], 等等
{
"schemaVersion": 1,
"name": "configservice",
"tag": "staging",
"architecture": "amd64",
"fsLayers": [...

最佳答案

如果您有支持 list 架构版本 2 的 Docker Registry,则只需在新标签下上传现有镜像的 list 。

例如,假设您要标记最新版本的 busybox 图像。步骤是:

下载现有 list :

curl '<registry_url>/v2/mybusybox/manifests/latest' \
-H 'accept: application/vnd.docker.distribution.manifest.v2+json' \
> manifest.json

list 可能如下所示(注意 schemaVersion 为 2):

{
"schemaVersion": 2,
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"config": {
"mediaType": "application/octet-stream",
"size": 1459,
"digest": "sha256:2b8fd9751c4c0f5dd266fcae00707e67a2545ef34f9a29354585f93dac906749"
},
"layers": [
{
"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
"size": 667590,
"digest": "sha256:8ddc19f16526912237dd8af81971d5e4dd0587907234be2b83e249518d5b673f"
}
]
}

在新标签下上传 list :

curl -XPUT '<registry_url>/v2/mybusybox/manifests/new_tag' \
-H 'content-type: application/vnd.docker.distribution.manifest.v2+json' \
-d '@manifest.json'

post 中提供了详细的分步指南.

关于docker - 如何在 docker 注册表 v2 中标记图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37134929/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com