Hay más ejemplos de AWS SDK disponibles en el GitHub repositorio de ejemplos de AWS Doc SDK.
Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Ejemplos de código para Amazon ECR mediante AWS SDKs
Los siguientes ejemplos de código muestran cómo utilizar Amazon Elastic Container Registry con un kit de desarrollo de AWS software (SDK).
Los conceptos básicos son ejemplos de código que muestran cómo realizar las operaciones esenciales dentro de un servicio.
Las acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las distintas funciones de servicio, es posible ver las acciones en contexto en los escenarios relacionados.
Introducción
En los siguientes ejemplos de código se muestra cómo empezar a utilizar Amazon ECR.
- Java
-
- SDK para 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 para 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 para 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)