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.
Création et installation de l’AWS CLI depuis la source
Cette rubrique décrit comment installer la dernière version de l’AWS Command Line Interface (AWS CLI) depuis la source, ou effectuer une mise à jour depuis la source sur les systèmes d’exploitation pris en charge.
Pour en savoir plus sur les dernières versions de l’AWS CLI, consultez le journal des modifications de la version 2 de l’AWS CLI
Important
Les versions 1 et 2 de l’AWS CLI utilisent le même nom de commande aws. Si vous avez déjà installé la version 1 de l’AWS CLI, consultez Guide de migration pour la AWS CLI version 2.
Rubriques
Pourquoi créer depuis la source ?
L’AWS CLI est disponible sous forme de programmes d’installation prédéfinis pour la plupart des plateformes et environnements, et sous forme d’image Docker.
En général, ces programmes d’installation couvrent la plupart des cas d’utilisation. Les instructions d’installation depuis la source sont destinés à vous aider pour les cas d’utilisation non couverts par nos programmes d’installation. En voici certains :
-
Les programmes d’installation prédéfinis ne sont pas compatibles avec votre environnement. Par exemple, ARM 32 bits n’est pas pris en charge par les programmes d’installation prédéfinis.
-
Les programmes d’installation prédéfinis comportent des dépendances qui manquent dans votre environnement. Par exemple, Alpine Linux utilise
musl, mais les programmes d’installation actuels nécessitent glibc, ce qui fait que les programmes d’installation prédéfinis ne fonctionnent pas immédiatement. -
Les programmes d’installation prédéfinis nécessitent des ressources auxquelles votre environnement restreint l’accès. Par exemple, les systèmes de sécurité renforcés peuvent ne pas autoriser l’accès à la mémoire partagée. Ceci est nécessaire pour le programme d’installation
awsfigé. -
Les programmes d’installation prédéfinis sont souvent des bloqueurs pour les responsables dans les gestionnaires de packages, car il est préférable de contrôler totalement le processus de création du code et des packages. Créer depuis la source permet aux responsables de la distribution de rationaliser le processus pour maintenir à jour l’AWS CLI. Laisser les responsables gérer permet de fournir aux clients des versions plus récentes de l’AWS CLI lors d’une installation depuis un gestionnaire de packages tiers tel que
brew,yumetapt. -
Les clients qui appliquent des correctifs à la fonctionnalité AWS CLI doivent créer et installer l’AWS CLI depuis la source. Ceci est particulièrement important pour les membres de la communauté qui souhaitent tester les modifications qu’ils ont apportées à la source avant de les partager dans le référentiel AWS CLI GitHub.
Étapes rapides
Note
Tous les exemples de code sont supposés s’exécuter depuis la racine du répertoire source.
Pour créer et installer l’AWS CLI depuis la source, suivez les étapes de cette section. L’AWS CLI utilise GNU Autotools
-
Configurez toutes les exigences pour votre environnement. Cela inclut de pouvoir exécuter les fichiers générés par GNU Autotools
et que Python 3.8 ou version ultérieure soit installé. -
Dans votre terminal, accédez au niveau supérieur du dossier source de l’AWS CLI, puis exécutez la commande
./configure. Cette commande vérifie le système pour toutes les dépendances requises, et génère un fichierMakefilepour créer et installer l’AWS CLI en fonction des configurations spécifiées et détectées.Pour obtenir plus de détails, les options de configuration disponibles et les informations sur les paramètres par défaut, consultez la section Étape 2 : Configuration de l’installation de la source de l’AWS CLI.
-
Exécutez la commande
make. Cette commande génère l’AWS CLI en fonction de vos paramètres de configuration.L’exemple de commande
makesuivant est généré avec les options par défaut utilisant vos paramètres./configureexistants.Pour obtenir plus de détails et les options de build disponibles, consultez la section Étape 3 : Création de l’AWS CLI.
-
Exécutez la commande
make install. Cette commande installe l’AWS CLI créée à l’emplacement configuré sur votre système.L’exemple de commande
make installsuivant installe l’AWS CLI créée et crée des liens symboliques dans les emplacements configurés, à l’aide des paramètres de commande par défaut.Pour obtenir plus de détails et les options d’installation disponibles, consultez la section Étape 4 : Installation de l’AWS CLI.
-
Vérifiez que l’AWS CLI est installée correctement à l’aide de la commande suivante :
$aws --versionaws-cli/2.27.41 Python/3.11.6 Windows/10 exe/AMD64 prompt/offPour les étapes de résolution des erreurs d’installation, consultez la section Résolution des erreurs d’installation et de désinstallation de l’AWS CLI.
Étape 1 : Configuration de toutes les exigences
Pour créer l’AWS CLI depuis la source, vous devez remplir les conditions préalables suivantes :
Note
Tous les exemples de code sont supposés s’exécuter depuis la racine du répertoire source.
Téléchargez la source de l’AWS CLI en dupliquant le référentiel AWS CLI sur GitHub ou en téléchargeant l’archive de la source. Suivez l’une des instructions suivantes :
-
Acheminez et clonez le référentiel AWS CLI
depuis GitHub. Pour plus d’informations, consultez Fork a repository dans GitHub Docs. -
Téléchargez la dernière archive de la source à l’adresse https://awscli.amazonaws.com/awscli.tar.gz
, puis extrayez le contenu à l’aide des commandes suivantes : $curl "https://awscli.amazonaws.com/awscli.tar.gz" -o "awscli.tar.gz"$tar -xzf awscli.tar.gzNote
Pour télécharger une version spécifique, utilisez le format de lien suivant : https://awscli.amazonaws.com/awscli-
versionnumber.tar.gzPar exemple, pour la version 2.10.0, le lien est le suivant : https://awscli.amazonaws.com/awscli-
2.10.0.tar.gzLes versions source sont disponibles à partir de la version 2.10.0 de l’AWS CLI.
(Facultatif) Vérification de l’intégrité du fichier zip téléchargé en suivant les étapes ci-après :
-
Vous pouvez utiliser les étapes suivantes pour vérifier les signatures à l'aide de l'outil
GnuPG.Les fichiers du package d'installation
.zipde l'AWS CLI sont signés de manière chiffrée à l'aide de signatures PGP. En cas de dommage ou d'altération des fichiers, cette vérification échoue et vous ne devez pas poursuivre l'installation. -
Téléchargez et installez la commande
gpgà l'aide de votre gestionnaire de packages. Pour plus d’informations surGnuPG, consultez le site Web GnuPG. -
Pour créer le fichier de clé publique, créez un fichier texte et collez le texte suivant.
-----BEGIN PGP PUBLIC KEY BLOCK----- mQINBF2Cr7UBEADJZHcgusOJl7ENSyumXh85z0TRV0xJorM2B/JL0kHOyigQluUG ZMLhENaG0bYatdrKP+3H91lvK050pXwnO/R7fB/FSTouki4ciIx5OuLlnJZIxSzx PqGl0mkxImLNbGWoi6Lto0LYxqHN2iQtzlwTVmq9733zd3XfcXrZ3+LblHAgEt5G TfNxEKJ8soPLyWmwDH6HWCnjZ/aIQRBTIQ05uVeEoYxSh6wOai7ss/KveoSNBbYz gbdzoqI2Y8cgH2nbfgp3DSasaLZEdCSsIsK1u05CinE7k2qZ7KgKAUIcT/cR/grk C6VwsnDU0OUCideXcQ8WeHutqvgZH1JgKDbznoIzeQHJD238GEu+eKhRHcz8/jeG 94zkcgJOz3KbZGYMiTh277Fvj9zzvZsbMBCedV1BTg3TqgvdX4bdkhf5cH+7NtWO lrFj6UwAsGukBTAOxC0l/dnSmZhJ7Z1KmEWilro/gOrjtOxqRQutlIqG22TaqoPG fYVN+en3Zwbt97kcgZDwqbuykNt64oZWc4XKCa3mprEGC3IbJTBFqglXmZ7l9ywG EEUJYOlb2XrSuPWml39beWdKM8kzr1OjnlOm6+lpTRCBfo0wa9F8YZRhHPAkwKkX XDeOGpWRj4ohOx0d2GWkyV5xyN14p2tQOCdOODmz80yUTgRpPVQUtOEhXQARAQAB tCFBV1MgQ0xJIFRlYW0gPGF3cy1jbGlAYW1hem9uLmNvbT6JAlQEEwEIAD4CGwMF CwkIBwIGFQoJCAsCBBYCAwECHgECF4AWIQT7Xbd/1cEYuAURraimMQrMRnJHXAUC aGveYQUJDMpiLAAKCRCmMQrMRnJHXKBYD/9Ab0qQdGiO5hObchG8xh8Rpb4Mjyf6 0JrVo6m8GNjNj6BHkSc8fuTQJ/FaEhaQxj3pjZ3GXPrXjIIVChmICLlFuRXYzrXc Pw0lniybypsZEVai5kO0tCNBCCFuMN9RsmmRG8mf7lC4FSTbUDmxG/QlYK+0IV/l uJkzxWa+rySkdpm0JdqumjegNRgObdXHAQDWlubWQHWyZyIQ2B4U7AxqSpcdJp6I S4Zds4wVLd1WE5pquYQ8vS2cNlDm4QNg8wTj58e3lKN47hXHMIb6CHxRnb947oJa pg189LLPR5koh+EorNkA1wu5mAJtJvy5YMsppy2y/kIjp3lyY6AmPT1posgGk70Z CmToEZ5rbd7ARExtlh76A0cabMDFlEHDIK8RNUOSRr7L64+KxOUegKBfQHb9dADY qqiKqpCbKgvtWlds909Ms74JBgr2KwZCSY1HaOxnIr4CY43QRqAq5YHOay/mU+6w hhmdF18vpyK0vfkvvGresWtSXbag7Hkt3XjaEw76BzxQH21EBDqU8WJVjHgU6ru+ DJTs+SxgJbaT3hb/vyjlw0lK+hFfhWKRwgOXH8vqducF95NRSUxtS4fpqxWVaw3Q V2OWSjbne99A5EPEySzryFTKbMGwaTlAwMCwYevt4YT6eb7NmFhTx0Fis4TalUs+ j+c7Kg92pDx2uQ== =OBAt -----END PGP PUBLIC KEY BLOCK-----Pour référence, les détails de la clé publique sont les suivants.
Key ID: A6310ACC4672 Type: RSA Size: 4096/4096 Created: 2019-09-18 Expires: 2026-07-07 User ID: AWS CLI Team <aws-cli@amazon.com> Key fingerprint: FB5D B77F D5C1 18B8 0511 ADA8 A631 0ACC 4672 475C -
Importez la clé publique de l'AWS CLI à l'aide de la commande suivante, en remplaçant
public-key-file-namepar le nom du fichier de clé publique que vous avez créé.$gpg --importpublic-key-file-namegpg: /home/username/.gnupg/trustdb.gpg: trustdb created gpg: key A6310ACC4672475C: public key "AWS CLI Team <aws-cli@amazon.com>" imported gpg: Total number processed: 1 gpg: imported: 1 -
Téléchargez le fichier de signature AWS CLI du package téléchargé à l’adresse https://awscli.amazonaws.com/awscli.tar.gz.sig
. Celui-ci a le même chemin d’accès et le même nom que le fichier archive auquel il correspond, mais son extension est .sig. Enregistrez-le avec le même chemin que le fichier archive. Ou utilisez le bloc de commande suivant :$curl awscliv2.sig https://awscli.amazonaws.com/ -o awscli.tar.gz.sig -
Vérifiez la signature en transmettant les noms de fichiers
.siget.ziptéléchargés sous forme de paramètres à la commandegpg.$gpg --verify awscliv2.sig awscli.tar.gzLa sortie doit ressembler à ce qui suit :
gpg: Signature made Mon Nov 4 19:00:01 2019 PST gpg: using RSA key FB5D B77F D5C1 18B8 0511 ADA8 A631 0ACC 4672 475C gpg: Good signature from "AWS CLI Team <aws-cli@amazon.com>" [unknown] gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: FB5D B77F D5C1 18B8 0511 ADA8 A631 0ACC 4672 475CImportant
L'avertissement mentionné dans la sortie est attendu et n'indique pas de problème. Cet avertissement est dû au fait qu'il n'y a pas de chaîne de confiance entre votre clé PGP personnelle (si vous en avez une) et la clé PGP de l'AWS CLI. Pour plus d’informations, consultez Web of trust
.
-
-
-
Vous disposez d’un environnement capable d’exécuter des fichiers générés par GNU Autotools
tels que configureetMakefile. Ces fichiers sont largement portables sur les plateformes POSIX. -
Un interpréteur Python 3.8 ou version ultérieure est installé. La version Python minimale requise suit les mêmes échéances que la politique officielle de support de Python pour les SDK et les outils AWS
. Un interprète n’est pris en charge que six mois après la date de fin de support. -
(Facultatif) Installez toutes les dépendances de build et d’exécution de l’AWS CLI de la bibliothèque Python. La commande
./configurevous indique s’il vous manque des dépendances et comment les installer.Vous pouvez installer et utiliser automatiquement ces dépendances via la configuration. Consultez Téléchargement de dépendances pour plus d’informations.
Étape 2 : Configuration de l’installation de la source de l’AWS CLI
La configuration pour créer et installer l’AWS CLI est spécifiée à l’aide du script configure. Pour la documentation de toutes les options de configuration, exécutez le script configure avec l’option --help :
Les options les plus importantes sont les suivantes :
Emplacement d’installation
L’installation de la source de l’AWS CLI utilise deux répertoires configurables pour installer l’AWS CLI :
-
libdir: répertoire parent dans lequel l’AWS CLI sera installée. Le chemin d’accès à l’installation de l’AWS CLI est. La valeur par défaut<libdir-value>/aws-clilibdirpour Linux et macOS est/usr/local/lib, ce qui fait que le répertoire d’installation par défaut est./usr/local/lib/aws-cli -
bindir: répertoire dans lequel les exécutables de l’AWS CLI sont installés. L'emplacement par défaut est/usr/local/bin.
Les options configure suivantes contrôlent les répertoires utilisés :
-
--prefix: définit le préfixe de répertoire à utiliser pour l’installation. La valeur par défaut pour Linux et macOS est/usr/local. -
--libdir: définit lelibdirà utiliser pour installer l’AWS CLI. La valeur par défaut est<prefix-value>/lib. Si ni--libdirni--prefixne sont spécifiés, la valeur par défaut pour Linux et macOS est/usr/local/lib/. -
--bindir: définit lebindirà utiliser pour installer les exécutablesawsetaws_completerde l’AWS CLI. La valeur par défaut est<prefix-value>/bin. Si nibindirni--prefixne sont spécifiés, la valeur par défaut pour Linux et macOS est/usr/local/bin/.
Interpréteur Python
Note
Il est vivement recommandé de spécifier l’interpréteur Python lors d’une installation pour Windows.
Le script ./configure sélectionne automatiquement un interpréteur Python 3.8 (ou version ultérieure) installé afin de l’utiliser pour créer et exécuter l’AWS CLI à l’aide de la macro Autoconf AM_PATH_PYTHON
L’interpréteur Python à utiliser peut être défini explicitement à l’aide de la variable d’environnement PYTHON lors de l’exécution du script configure :
Téléchargement de dépendances
Par défaut, il est nécessaire que toutes les dépendances de build et d’exécution de l’AWS CLI soient déjà installées dans le système. Cela inclut toutes les dépendances des bibliothèques Python. Toutes les dépendances sont vérifiées lors de l’exécution du script configure, et si n’importe quelle dépendance Python est absente du système, le script configure génère une erreur.
L’exemple de code suivant génère des erreurs lorsque des dépendances sont absentes de votre système :
Pour installer automatiquement les dépendances Python requises, utilisez l’option --with-download-deps. Quand vous utilisez cet indicateur, le processus de génération effectue les opérations suivantes :
-
Ignore la vérification des dépendances de la bibliothèque Python.
-
Configure les paramètres pour télécharger toutes les dépendances Python requises et utilise uniquement les dépendances téléchargées pour créer l’AWS CLI pendant la build
make.
L’exemple de commande de configuration suivant utilise l’option --with-download-deps afin de télécharger et d’utiliser les dépendances Python :
Type d’installation
Le processus d’installation de la source prend en charge les types d’installation suivants :
-
system-sandbox(Par défaut) : crée un environnement virtuel Python isolé, installe l’AWS CLI dans celui-ci, et crée des liens symboliques vers les exécutablesawsetaws_completerdans l’environnement virtuel. Cette installation de l’AWS CLI dépend directement de l’interpréteur Python sélectionné pour son exécution.Ce mécanisme d’installation léger permet d’avoir l’AWS CLI installé sur un système, et suit les bonnes pratiques Python en plaçant l’installation dans un environnement virtuel de test. Cette option est destinée aux clients qui souhaitent installer l’AWS CLI depuis la source de la manière la plus fluide possible, avec une installation couplée à votre installation de Python.
-
portable-exe: fige le fichier AWS CLI dans un exécutable autonome qui peut être distribué dans des environnements d’architectures similaires. Il s’agit du même processus que celui utilisé pour générer les exécutables prédéfinis officiels de l’AWS CLI.portable-exese fige dans une copie de l’interpréteur Python choisi à l’étapeconfigureafin d’être utilisé pour l’exécution du AWS CLI. Cela permet de le déplacer vers d’autres machines qui ne disposent peut-être pas d’un interpréteur Python.Ce type de build est utile, car vous pouvez vous assurer que votre installation de l’AWS CLI n’est pas couplée à la version Python installée dans l’environnement, et vous pouvez distribuer une build sur un autre système sur lequel Python n’est peut-être pas déjà installé. Cela vous permet de contrôler les dépendances et la sécurité des exécutables de l’AWS CLI que vous utilisez.
Pour configurer le type d’installation, utilisez l’option --with-install-type et spécifiez la valeur portable-exe ousystem-sandbox.
L’exemple de commande ./configure suivant spécifie une valeur portable-exe :
Étape 3 : Création de l’AWS CLI
Utilisez la commande make pour créer l’AWS CLI à l’aide de vos paramètres de configuration :
Note
Lorsque vous utilisez la commande make, les étapes suivantes sont effectuées en arrière-plan :
-
Un environnement virtuel est créé dans le répertoire de la build à l’aide du module Python
venv. L’environnement virtuel est initialisé avec une version de pip fournie dans la bibliothèque standard Python . -
Copie les dépendances de la bibliothèque Python. Selon que l’indicateur
--with-download-depsest spécifié ou non dans la commandeconfigure, cette étape effectue l’une des opérations suivantes :-
L’indicateur
--with-download-depsest spécifié. Les dépendances Python sont installées par pip. Cela inclutwheel,setuptoolset toutes les dépendances d’exécution de l’AWS CLI. Si vous générez l’exécutableportable-exe,pyinstallerest installé. Ces exigences sont toutes spécifiées dans les fichiers de verrouillage générés à partir depip-compile. -
L’indicateur
--with-download-depsn’est pas spécifié. Les bibliothèques Python du package du site de l’interpréteur Python ainsi que tous les scripts (par exemple,pyinstaller) sont copiés dans l’environnement virtuel utilisé pour la build.
-
-
Exécute
pip installdirectement sur la base de code de l’AWS CLI pour créer une build hors ligne dans l’arborescence et installer l’AWS CLI dans l’environnement virtuel de génération. Cette installation utilise les indicateurs pip --no-build-isolation, --use-feature=in-tree-build , --no-cache-dir et --no-index. -
(Facultatif) Si le paramètre
--install-typeest défini surportable-exedans la commandeconfigure, génère un exécutable autonome à l’aide depyinstaller.
Étape 4 : Installation de l’AWS CLI
La commande make install installe l’AWS CLI générée à l’emplacement configuré sur le système.
La règle make install prend en charge la variable DESTDIR
Note
Lorsque vous exécutez make install, les étapes suivantes sont effectuées en arrière-plan :
-
Déplace l’un des éléments suivants vers le répertoire d’installation configuré :
-
Si le type d’installation est
system-sandbox, déplace l’environnement virtuel généré. -
Si le type d’installation est un
portable-exe, déplace l’exécutable autonome généré.
-
-
Crée des liens symboliques pour les exécutables
awsetaws_completerdans le répertoire bin configuré.
Étape 5 : Vérification de l’installation de l’AWS CLI
Vérifiez que l’AWS CLI est installée correctement en utilisant la commande suivante :
$aws --versionaws-cli/2.27.41 Python/3.11.6 Windows/10 exe/AMD64 prompt/off
Si la commande aws n’est pas reconnue, vous devrez peut-être redémarrer votre terminal pour mettre à jour les nouveaux liens symboliques. Si vous rencontrez d’autres problèmes après l’installation ou la désinstallation de l’AWS CLI, consultez Résolution des erreurs liées au AWS CLI pour connaître les étapes courantes de résolution de problèmes.
Exemples de flux de travail
Cette section fournit des exemples de flux de travail de base pour une installation depuis la source.
Installation de base sous Linux et macOS
L’exemple suivant est un flux de travail d’installation de base dans lequel l’AWS CLI est installée à l’emplacement par défaut /usr/local/lib/aws-cli.
$cdpath/to/cli/respository/$./configure$make$make install
Installation automatisée sous Windows
Note
Vous devez exécuter PowerShell en tant qu’administrateur pour utiliser ce flux de travail.
Il est possible d’utiliser MSYS2 de façon automatisée dans un paramètre CI. Consultez Using MSYS2 in CI
Conteneur Alpine Linux
Vous trouverez ci-dessous un exemple de Dockerfile qui peut être utilisé pour obtenir une installation fonctionnelle de l’AWS CLI dans un conteneur Alpine Linux comme alternative aux fichiers binaires prédéfinis pour AlpineAWSCLI_VERSION par le numéro de version souhaité de l’AWS CLI.
FROM python:3.8-alpine AS builder ENV AWSCLI_VERSION=2.10.1 RUN apk add --no-cache \ curl \ make \ cmake \ gcc \ g++ \ libc-dev \ libffi-dev \ openssl-dev \ && curl https://awscli.amazonaws.com/awscli-${AWSCLI_VERSION}.tar.gz | tar -xz \ && cd awscli-${AWSCLI_VERSION} \ && ./configure --prefix=/opt/aws-cli/ --with-download-deps \ && make \ && make install FROM python:3.8-alpine RUN apk --no-cache add groff COPY --from=builder /opt/aws-cli/ /opt/aws-cli/ ENTRYPOINT ["/opt/aws-cli/bin/aws"]
Cette image est générée, puis invoquée par l’AWS CLI depuis un conteneur similaire à celui créé sur Amazon Linux 2 :
$docker build --tag awscli-alpine .$docker run --rm -it awscli-alpine --versionaws-cli/2.2.1 Python/3.8.11 Linux/5.10.25-linuxkit source-sandbox/x86_64.alpine.3 prompt/off
La taille finale de cette image est inférieure à celle de l’image Docker officielle de l’AWS CLI. Pour en savoir plus sur l’image Docker officielle, consultez Exécution des images officielles Amazon ECR Public ou Docker pour l’AWS CLI.
Résolution des erreurs d’installation et de désinstallation de l’AWS CLI
Pour connaître les étapes de résolution des problèmes d’erreurs d’installation courantes, consultez Résolution des erreurs liées au AWS CLI. Pour connaître les étapes de résolution de problèmes les plus pertinentes, consultez Erreurs de type Commande introuvable, La commande « aws --version » renvoie une version différente de celle que vous avez installée et La commande « aws --version » renvoie une version après avoir désinstallé le AWS CLI.
Pour tout problème non traité dans les guides de résolution des problèmes, recherchez les problèmes avec l’étiquette source-distribution dans le référentiel de l’AWS CLI
Étapes suivantes
Après avoir installé l’AWS CLI, vous devez effectuer une Configuration du AWS CLI.