Service App Runner basé sur une image source - AWS App Runner

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.

Service App Runner basé sur une image source

Vous pouvez l'utiliser AWS App Runner pour créer et gérer des services basés sur deux types de source de service fondamentalement différents : le code source et l'image source. Quel que soit le type de source, App Runner se charge de démarrer, d'exécuter, de dimensionner et d'équilibrer la charge de votre service. Vous pouvez utiliser la fonctionnalité CI/CD d'App Runner pour suivre les modifications apportées à votre image source ou à votre code. Lorsqu'App Runner découvre une modification, il crée automatiquement (pour le code source) et déploie la nouvelle version sur votre service App Runner.

Ce chapitre décrit les services basés sur une image source. Pour plus d'informations sur les services basés sur le code source, consultezService App Runner basé sur le code source.

Une image source est une image conteneur publique ou privée stockée dans un référentiel d'images. Vous pointez App Runner vers une image, et celui-ci démarre un service exécutant un conteneur basé sur cette image. Aucune étape de construction n'est nécessaire. Vous fournissez plutôt une ready-to-deploy image.

Fournisseurs de référentiels d'images

App Runner prend en charge les fournisseurs de référentiels d'images suivants :

  • Amazon Elastic Container Registry (Amazon ECR) — Stocke les images privées d'un. Compte AWS

  • Amazon Elastic Container Registry Public (Amazon ECR Public) : stocke des images lisibles par le public.

Utilisation d'une image enregistrée dans Amazon ECR dans votre compte AWS

Amazon ECR stocke les images dans des référentiels. Il existe des référentiels privés et publics. Pour déployer votre image sur un service App Runner à partir d'un référentiel privé, App Runner doit être autorisé à lire votre image depuis Amazon ECR. Pour accorder cette autorisation à App Runner, vous devez attribuer un rôle d'accès à App Runner. Il s'agit d'un rôle AWS Identity and Access Management (IAM) doté des autorisations d'action Amazon ECR nécessaires. Lorsque vous utilisez la console App Runner pour créer le service, vous pouvez choisir un rôle existant dans votre compte. Vous pouvez également utiliser la console IAM pour créer un nouveau rôle personnalisé. Vous pouvez également choisir que la console App Runner vous crée un rôle basé sur des politiques gérées.

Lorsque vous utilisez l'API App Runner ou le AWS CLI, vous effectuez un processus en deux étapes. Vous devez d'abord utiliser la console IAM pour créer un rôle d'accès. Vous pouvez utiliser une politique gérée fournie par App Runner ou saisir vos propres autorisations personnalisées. Ensuite, vous fournissez le rôle d'accès lors de la création du service à l'aide de l'action CreateServiceAPI.

Pour plus d'informations sur la création du service App Runner, consultezCréation d'un service App Runner.

Utilisation d'une image stockée dans Amazon ECR sur un autre compte AWS

Lorsque vous créez un service App Runner, vous pouvez utiliser une image stockée dans un référentiel Amazon ECR appartenant à un AWS compte autre que celui dans lequel se trouve votre service. Il y a quelques considérations supplémentaires à prendre en compte lors de l'utilisation d'une image entre comptes, en plus de celles répertoriées dans la section précédente concernant une image de même compte.

  • Le référentiel multi-comptes doit être associé à une politique. La politique du référentiel fournit à votre rôle d'accès les autorisations nécessaires pour lire les images du référentiel. Utilisez la politique suivante à cette fin. access-role-arnRemplacez-le par le Amazon Resource Name (ARN) de votre rôle d'accès.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "access-role-arn" }, "Action": [ "ecr:BatchGetImage", "ecr:DescribeImages", "ecr:GetDownloadUrlForLayer" ] } ] }

    Pour plus d'informations sur l'attachement d'une politique de référentiel à un référentiel Amazon ECR, consultez la section Définition d'une déclaration de politique de référentiel dans le guide de l'utilisateur d'Amazon Elastic Container Registry.

  • App Runner ne prend pas en charge le déploiement automatique des images Amazon ECR sur un compte différent de celui sur lequel se trouve votre service.

Utilisation d'une image stockée dans Amazon ECR Public

Amazon ECR Public stocke des images lisibles par le public. Voici les principales différences entre Amazon ECR et Amazon ECR Public que vous devez connaître dans le contexte des services App Runner :

  • Les images publiques d'Amazon ECR sont lisibles par le public. Il n'est pas nécessaire de fournir un rôle d'accès lorsque vous créez un service basé sur une image Amazon ECR Public. Aucune politique n'est associée au référentiel.

  • App Runner ne prend pas en charge le déploiement automatique (continu) des images Amazon ECR Public.

Lancez un service directement depuis Amazon ECR Public

Vous pouvez lancer directement des images de conteneur d'applications Web compatibles hébergées sur la galerie publique Amazon ECR en tant que services Web exécutés sur App Runner. Lorsque vous parcourez la galerie, recherchez Launch with App Runner sur la page de la galerie pour une image. Une image avec cette option est compatible avec App Runner. Pour plus d'informations sur la galerie, consultez la section Utilisation de la galerie publique Amazon ECR dans le guide de l'utilisateur Amazon ECR Public.

Galerie publique Amazon ECR présentant une page d'image de conteneur avec un bouton Lancer avec App Runner
Pour lancer une image de galerie en tant que service App Runner
  1. Sur la page de galerie d'une image, choisissez Lancer avec App Runner.

    Résultat : La console App Runner s'ouvre dans un nouvel onglet du navigateur. La console affiche l'assistant de création de service, avec la plupart des nouveaux détails de service requis préremplis.

  2. Si vous souhaitez créer votre service dans une AWS région autre que celle affichée sur la console, choisissez la région affichée dans l'en-tête de la console. Sélectionnez ensuite une autre région.

  3. Pour Port, entrez le numéro de port sur lequel l'application d'imagerie écoute. Vous pouvez généralement le trouver sur la page de la galerie de l'image.

  4. Modifiez éventuellement tout autre détail de configuration.

  5. Choisissez Suivant, passez en revue les paramètres, puis choisissez Créer et déployer.

Exemple d'image

L'équipe App Runner conserve l'image d'hello-app-runnerexemple dans une galerie publique Amazon ECR. Vous pouvez utiliser cet exemple pour commencer à créer un service App Runner basé sur des images. Pour plus d'informations, consultez hello-app-runner.