AWS ECR ListImages结果的顺序奇怪

问题描述

我正在尝试使用ListImages从AWS ECR获取最近推送的最近5张图像的列表。但是,我观察到结果的排序不是我期望的。

例如:

我有一个具有以下标记的ECR存储库some-service0.1.00.2.0 ... 0.6.00.6.1,它们已被推送按按时间顺序的顺序。

当我尝试列出图像的标签时,AWS ECR以某种方式给了我奇怪的排序。

$ aws ecr list-images --repository-name some-service | jq '.imageIds[] | .imageTag'
"0.3.0"
"0.6.1"
"0.3.1"
"0.2.0"
"0.6.2"
"0.6.0"
"0.4.0"
"0.1.0"
"0.5.0"

当我尝试使用maxResults时,结果一致:

$ aws ecr list-images --max-results 5 --repository-name some-service | jq '.imageIds[] | .imageTag'
"0.3.0"
"0.6.1"
"0.3.1"
"0.2.0"
"0.6.2"

排序似乎与DescribeImages一致。我试图查看API使用了哪些数据作为排序键,但找不到任何数据。

$ aws ecr describe-images --max-result 5 \
    --repository-name some-service \
    | jq '.imageDetails[] | {imageTags,imageDigest,imageSizeInBytes,imagePushedAt}'
{
  "imageTags": [
    "0.3.0"
  ],"imageDigest": "sha256:4497e8d...","imageSizeInBytes": 190502899,"imagePushedAt": "2020-05-20T15:58:32+07:00"
}
{
  "imageTags": [
    "0.6.1"
  ],"imageDigest": "sha256:45a1be8...","imageSizeInBytes": 218137213,"imagePushedAt": "2020-07-27T18:48:05+07:00"
}
{
  "imageTags": [
    "0.3.1"
  ],"imageDigest": "sha256:4b96a8ab...","imageSizeInBytes": 190502957,"imagePushedAt": "2020-06-18T17:30:52+07:00"
}
{
  "imageTags": [
    "0.2.0"
  ],"imageDigest": "sha256:168e14fb6...","imageSizeInBytes": 193764109,"imagePushedAt": "2020-05-11T18:57:26+07:00"
}
{
  "imageTags": [
    "0.6.2"
  ],"imageDigest": "sha256:2f24f...","imageSizeInBytes": 218146252,"imagePushedAt": "2020-08-06T19:43:00+07:00"
}
  • 有人在内部知道AWS ECR API如何对图像进行排序吗?
  • 是否有一种无需使用--query即可实现我想要的功能方法(因为我实际上是使用AWS Python SDK来完成任务的。)

非常感谢您的时间!

Genzer

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...