Hello Amazon ECR
The following code examples show how to get started using Amazon ECR.
- Java
-
- SDK for Java 2.x
-
Note
There's more on GitHub. Find the complete example and learn how to set up and run in the Amazon Code Examples Repository
. import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.ecr.EcrClient; import software.amazon.awssdk.services.ecr.model.EcrException; import software.amazon.awssdk.services.ecr.model.ListImagesRequest; import software.amazon.awssdk.services.ecr.paginators.ListImagesIterable; public class HelloECR { public static void main(String[] args) { final String usage = """ Usage: <repositoryName> Where: repositoryName - The name of the Amazon ECR repository. """; if (args.length != 1) { System.out.println(usage); System.exit(1); } String repoName = args[0]; EcrClient ecrClient = EcrClient.builder() .region(Region.US_EAST_1) .build(); listImageTags(ecrClient, repoName); } public static void listImageTags(EcrClient ecrClient, String repoName){ ListImagesRequest listImagesPaginator = ListImagesRequest.builder() .repositoryName(repoName) .build(); ListImagesIterable imagesIterable = ecrClient.listImagesPaginator(listImagesPaginator); imagesIterable.stream() .flatMap(r -> r.imageIds().stream()) .forEach(image -> System.out.println("The docker image tag is: " +image.imageTag())); } }
-
For API details, see listImages in Amazon SDK for Java 2.x API Reference.
-
- Kotlin
-
- SDK for Kotlin
-
Note
There's more on GitHub. Find the complete example and learn how to set up and run in the Amazon Code Examples Repository
. import aws.sdk.kotlin.services.ecr.EcrClient import aws.sdk.kotlin.services.ecr.model.ListImagesRequest import kotlin.system.exitProcess suspend fun main(args: Array<String>) { val usage = """ Usage: <repositoryName> Where: repositoryName - The name of the Amazon ECR repository. """.trimIndent() if (args.size != 1) { println(usage) exitProcess(1) } val repoName = args[0] listImageTags(repoName) } suspend fun listImageTags(repoName: String?) { val listImages = ListImagesRequest { repositoryName = repoName } EcrClient { region = "us-east-1" }.use { ecrClient -> val imageResponse = ecrClient.listImages(listImages) imageResponse.imageIds?.forEach { imageId -> println("Image tag: ${imageId.imageTag}") } } }
-
For API details, see listImages
in Amazon SDK for Kotlin API reference.
-
- Python
-
- SDK for Python (Boto3)
-
Note
There's more on GitHub. Find the complete example and learn how to set up and run in the Amazon Code Examples Repository
. import boto3 import argparse from boto3 import client def hello_ecr(ecr_client: client, repository_name: str) -> None: """ Use the AWS SDK for Python (Boto3) to create an Amazon Elastic Container Registry (Amazon ECR) client and list the images in a repository. This example uses the default settings specified in your shared credentials and config files. :param ecr_client: A Boto3 Amazon ECR Client object. This object wraps the low-level Amazon ECR service API. :param repository_name: The name of an Amazon ECR repository in your account. """ print( f"Hello, Amazon ECR! Let's list some images in the repository '{repository_name}':\n" ) paginator = ecr_client.get_paginator("list_images") page_iterator = paginator.paginate( repositoryName=repository_name, PaginationConfig={"MaxItems": 10} ) image_names: [str] = [] for page in page_iterator: for schedule in page["imageIds"]: image_names.append(schedule["imageTag"]) print(f"{len(image_names)} image(s) retrieved.") for schedule_name in image_names: print(f"\t{schedule_name}") if __name__ == "__main__": parser = argparse.ArgumentParser(description="Run hello Amazon ECR.") parser.add_argument( "--repository-name", type=str, help="the name of an Amazon ECR repository in your account.", required=True, ) args = parser.parse_args() hello_ecr(boto3.client("ecr"), args.repository_name)
-
For API details, see listImages in Amazon SDK for Python (Boto3) API Reference.
-
For a complete list of Amazon SDK developer guides and code examples, see Using Amazon ECR with an Amazon SDK. This topic also includes information about getting started and details about previous SDK versions.