Greengrass does not remove old images after updating the deployment more than 3 times

0

Hi,

We are using nucleus version 2.12.1. Documents say greengrass should remove images from older deployments but it is not removing even after we make 5-6 deployments. Here is our sample component recipe:

{
  "RecipeFormatVersion": "2020-01-25",
  "ComponentName": "App1",
  "ComponentVersion": "5.0.0",
  "ComponentType": "aws.greengrass.generic",
  "ComponentDescription": "A component that uses docker run and greengrass to do a task on edges",
  "ComponentPublisher": "Some Publisher",
  "ComponentConfiguration": {
    "DefaultConfiguration": {
      "preDeploymentScript": " ",
      "deploymentExtraArguments": "",
      "postDeploymentScript": " ",
      "filesToUpload": " "
    }
  },
  "ComponentDependencies": {
    "aws.greengrass.DockerApplicationManager": {
      "VersionRequirement": ">=2.0.0 <2.1.0",
      "DependencyType": "HARD"
    },
    "aws.greengrass.TokenExchangeService": {
      "VersionRequirement": ">=2.0.0 <2.1.0",
      "DependencyType": "HARD"
    }
  },
  "Manifests": [
    {
      "Platform": {
        "os": "all",
        "architecture": "all"
      },
      "Lifecycle": {
        "Install": {
          "script": "docker pull app1:1.0",
          "RequiresPrivilege": true,
          "Timeout": 3600
        },
        "Run": {
          "script": "docker run -e AWS_CONTAINER_AUTHORIZATION_TOKEN -e AWS_CONTAINER_CREDENTIALS_FULL_URI  --name app1 --network host  app1:1.0",
          "RequiresPrivilege": true
        },
        "Shutdown": {
          "script": "docker stop app1 && docker rm app1",
          "RequiresPrivilege": true
        }
      },
      "Artifacts": []
    }
  ],
  "Lifecycle": {}
}
已提问 1 个月前125 查看次数
1 回答
1

Hi there,

Looks like you are not using Greengrass to download the image because your recipe's "artifacts" section is completely empty. For Greengrass to manage the images, you must follow the documentation here: https://docs.aws.amazon.com/greengrass/v2/developerguide/run-docker-container.html#run-docker-container-public-ecr-dockerhub.

Notice the artifacts contains the images in the form of "docker:<image name>:<tag>".

Cheers,

Michael

AWS
专家
已回答 1 个月前
profile pictureAWS
专家
Greg_B
已审核 1 个月前
  • Hi Michael,

    Thanks for the answer. We will try it ASAP and let you know about the result.

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则