我的聪明同事 John Meyers 帮我解决了这个问题,他使用这个命令得到了一个很好的列表:
curl -X GET -u 'your-username:your-password!' https://harbor.vnerd.com/v2/_catalog
看起来您只能获取注册表/本地中已被拉下的标签。它会为您提供代理项目中所有内容的列表,这应该是您关心的所有内容?
他跟着这个脚本:
假设是这样,一些谷歌搜索将这些废话拼凑在一起,从注册表中获取“胖清单”并寻找 arm64 架构。
#!/bin/sh
images=($@)
for image in "${images[@]}"; do
scope="scope=repository:${image}:pull&"
token=$(curl -s "https://auth.docker.io/token?service=registry.docker.io&${scope}" | jq -r '.token')
echo ${image}
if curl -H "Accept: application/vnd.docker.distribution.manifest.list.v2+json" \
-H "Authorization: Bearer $token" \
-s "https://registry-1.docker.io/v2/${image}/manifests/latest" | jq -r '.manifests|.[] | select(.platform.architecture | ascii_downcase =="arm")' &> /dev/null; then
echo "Has an ARM image"
else
echo "Bad news"
fi
done
让我们发现许多 Confluent (Kafka) 映像目前还没有 ARM64 版本,这是一个令人担忧的问题。Helm 同上。
confluentinc/cp-kafka
confluentinc/cp-kafka-connect-base
confluentinc/cp-schema-registry
confluentinc/cp-server
confluentinc/cp-zookeeper
cypress/base
devth/helm