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": {}
}
asked 20 days ago107 views
1 Answer
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
EXPERT
answered 20 days ago
profile pictureAWS
EXPERT
Greg_B
reviewed 18 days ago
  • Hi Michael,

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

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions