D'autres exemples de AWS SDK sont disponibles dans le référentiel AWS Doc SDK Examples GitHub .
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Exemples de code pour Amazon ECR à l'aide d'Amazon ECR AWS SDKs
Les exemples de code suivants vous montrent comment utiliser Amazon Elastic Container Registry avec un kit de développement AWS logiciel (SDK).
Les principes de base sont des exemples de code qui vous montrent comment effectuer les opérations essentielles au sein d’un service.
Les actions sont des extraits de code de programmes plus larges et doivent être exécutées dans leur contexte. Alors que les actions vous indiquent comment appeler des fonctions de service individuelles, vous pouvez les voir en contexte dans leurs scénarios associés.
Ressources supplémentaires
Mise en route
Les exemples de code suivants montrent comment commencer à utiliser Amazon ECR.
- Java
-
- SDK pour Java 2.x
-
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()));
}
}
- Kotlin
-
- SDK pour Kotlin
-
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}")
}
}
}
- Python
-
- SDK pour Python (Boto3)
-
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)