Comment personnaliser mon environnement Elastic Beanstalk à l’aide de hooks de plateforme ?

Lecture de 2 minute(s)
0

Je souhaite utiliser des hooks de plateforme pour créer des scripts personnalisés ou d'autres fichiers exécutables afin de personnaliser mon environnement AWS Elastic Beanstalk. Je souhaite déployer ces derniers sur mes instances Amazon Elastic Compute Cloud (Amazon EC2) qui s'exécutent dans l'environnement.

Résolution

Remarque : Les hooks de plateforme ne sont pas pris en charge sur les versions de plateforme Amazon Linux Amazon Machine Image (AMI) antérieures à Amazon Linux 2. Elastic Beanstalk accorde automatiquement des autorisations d'exécution à tous les scripts hook de plateforme pour Amazon AL2023 et Amazon Linux 2.

Configurer votre répertoire .platform

Procédez comme suit :

  1. À la racine de votre bundle d'applications, créez un répertoire masqué nommé .platform/hooks pour les hooks de plateforme de déploiement d'applications ou .platform/confighooks pour les hooks de plateforme de déploiement de configuration.
  2. En fonction de l'étape de provisionnement de l'instance lors de l'exécution des fichiers hook de plateforme, vous devez placer les fichiers hook dans le sous-répertoire prebuild, predeploy ou postdeploy.
    Pour plus d'informations sur chaque sous-répertoire, consultez la section Hooks de plateforme de déploiement d’applications.
  3. Le bundle source de votre application doit être similaire au bundle suivant :
    ~/workspace/my-application/|-- .platform
        |--hooks
           |--prebuild
              |-- custom-prebuild-script.sh
           |--predeploy
              |-- custom-predeploy-script.sh
           |--postdeploy
              |-- custom-postdeploy-script.sh
    |-- .ebextensions
    |-- index.php
             `-- styles.css

Spécifier les fichiers hook

Les fichiers hook peuvent être des fichiers binaires ou des fichiers de script commençant par une ligne #! et contiennent leur chemin d'interprétation, tel que #!/bin/bash.

Exemple de contenu dans un fichier de script custom-postdeploy-script.sh :

#!/bin/bash
sudo su
cd /var/app/current
echo "Hello from AWS hook" >> 'test.txt'

Pour plus d'informations, consultez la section Comment utiliser .ebextensions pour personnaliser mon environnement Elastic Beanstalk ?

Appliquer les hooks de plateforme à votre application

Procédez comme suit :

  1. Créez un bundle source d'applications qui inclut les hooks de plateforme et les fichiers de configuration précédents.
    Remarque : Les navigateurs de fichiers peuvent masquer les dossiers commençant par un point, tels que .platform et .ebextensions. Pour maintenir ces dossiers visibles, incluez les dossiers à la racine de votre bundle d'applications lors de la création de votre bundle source d'applications.
  2. Déployez votre application Elastic Beanstalk mise à jour.
AWS OFFICIEL
AWS OFFICIELA mis à jour il y a 5 mois