Comment démarrer avec Doctl, le client de ligne de commande de DigitalOcean –
DigitalOcean fournit une API comme alternative à son panneau de contrôle cloud basé sur le Web. L’officiel doctl
Le client en ligne de commande offre un wrapper intuitif autour de l’API. Vous pouvez administrer vos ressources DigitalOcean à l’aide d’une interface de programmation facilement scriptable.
Sommaire
Installation
Doctl est disponible sur les systèmes Windows, macOS et Linux. Diverses méthodes d’installation sont prises en charge selon la plate-forme. Tous les systèmes peuvent télécharger la dernière version directement depuis GitHub.
La plupart des distributions Linux incluent doctl
dans leurs référentiels de packages. Il est également proposé sous forme de distribution Snap sur les distributions avec prise en charge Snap. L’utilisation d’un gestionnaire de packages est le mécanisme d’installation préféré car il vous tiendra au courant des nouvelles versions.
DigitalOcean fournit également des conteneurs Docker officiels sur Docker Hub. Ils sont idéaux pour une utilisation unique dans les environnements pris en charge par Docker. Des instructions sur l’utilisation de l’image Docker peuvent être trouvées sur sa page Docker Hub; en général, l’utilisation est identique à une installation directe.
Créer un jeton d’accès
Vous devez vous connecter doctl
sur votre compte DigitalOcean avant de commencer à utiliser l’outil. L’authentification est persistante une fois la configuration effectuée, vous n’aurez donc pas besoin de fournir des informations d’identification avec chaque commande.
Commencez par vous connecter à votre compte DigitalOcean. Cliquez sur le lien «API» en bas de la barre latérale. Sous «Jetons d’accès personnels», cliquez sur le bouton «Générer un nouveau jeton». Donnez un nom à votre jeton et activez les portées de lecture et d’écriture.
Une fois votre token créé, sa valeur sera affichée dans le panneau de contrôle. Enregistrez-le maintenant car il ne sera pas possible de le récupérer plus tard. Vous devrez créer un nouveau jeton si la valeur de celui-ci est oubliée.
Connexion à votre compte
Vous pouvez maintenant retourner à votre terminal. Utilisez le jeton d’accès généré pour vous connecter doctl
à votre compte:
doctl auth init
Vous serez invité à entrer le jeton d’accès. En supposant que la validation est réussie, doctl
enregistrera vos informations d’identification. Ils seront envoyés automatiquement avec les commandes suivantes. Les fichiers de configuration sont enregistrés dans le .config/doctl
répertoire dans votre dossier de départ.
Test de votre configuration
Vous devriez maintenant pouvoir interagir avec succès avec votre compte DigitalOcean.
Essayez de courir doctl account get
pour vérifier les détails de votre compte peuvent être récupérés.
Interagir avec les ressources DigitalOcean
doctl
vous permet d’interagir avec presque toutes les ressources DigitalOcean disponibles. Il y a trop de possibilités à couvrir de manière exhaustive dans un article, nous nous en tiendrons donc à détailler quelques commandes couramment utilisées.
doctl compute
– Commande de haut niveau pour interagir avec une variété de types de ressources. Comprend des gouttelettes, des domaines, des volumes, des sauvegardes, des instantanés, des images, des pare-feu et des équilibreurs de charge.doctl compute droplet
– Vous permet d’interagir avec les gouttelettes. Essayerdoctl compute droplet list
pour lister toutes vos gouttelettes, oudoctl compute droplet create --image ubuntu-20-04-x64 --size s-1vcpu-1gb --region lon1 my-droplet
pour créer un droplet Ubuntu de base dans le datacenter LON1. Une variété d’autres sous-commandes fournissent des options de gestion complètes.doctl databases db
– Interagissez avec les bases de données au sein d’un cluster de bases de données. Utilisationdoctl databases db list
pour récupérer des bases de données existantes etdoctl databases db create <id> <name>
créer. D’autres commandes associées vous permettent de mettre à l’échelle vos clusters de bases de données.doctl kubernetes
– Cet espace de noms de commande vous permet de gérer vos clusters Kubernetes. Une pléthore de sous-commandes vous permet de configurer des nœuds, des pools de nœuds, des versions de cluster et des connexions de registre de conteneurs.doctl registry
– Gère votre registre de conteneurs DigitalOcean, y compris les options pour créer, supprimer et répertorier les registres et les conteneurs. Vous pouvez également appeler ou annuler le processus de récupération de place pour libérer de l’espace de stockage.
De nombreuses fonctionnalités sont disponibles; il est conseillé de vous référer à la documentation officielle pour obtenir la liste complète des commandes et options. En règle générale, tout point de terminaison d’API DigitalOcean a un équivalent doctl
commander.
L’exploration des commandes disponibles est simplifiée grâce à une documentation intégrée complète. Exécution d’une commande de niveau supérieur telle que doctl compute
sans aucun argument affichera une liste de toutes les sous-commandes disponibles. Cela permet une découverte rapide des fonctionnalités et signifie que vous n’avez pas besoin de valider toute la liste en mémoire.
En plus, doctl
prend en charge la complétion automatique des commandes dans la plupart des shells populaires. Ajouter source <(doctl completion bash)
à ton ~/.profile
Le fichier est généralement suffisant pour l’activer. Remplacer bash
pour votre propre coquille. Des conseils spécifiques à Shell se trouvent dans le doctl
docs.
Utilisation de plusieurs comptes (contextes)
doctl
fournit une prise en charge simplifiée de plusieurs comptes d’utilisateurs DigitalOcean. Vous pouvez définir des «contextes» authentifiés autonomes dans lesquels vous basculez en utilisant le --context
drapeau ou le DIGITALOCEAN_CONTEXT
variable d’environnement.
Pour ajouter un contexte, utilisez la commande suivante:
doctl auth init --context my-context
C’est la même commande d’authentification que nous avons vue précédemment, cette fois modifiée pour utiliser le my-context
le contexte. Le contexte est automatiquement créé s’il n’existe pas déjà. Lorsqu’aucun contexte n’est spécifié, le default
le contexte est utilisé.
Définition des valeurs de configuration par défaut
Vous pouvez définir des valeurs par défaut pour la plupart des options et des indicateurs à l’aide du fichier de configuration. Cela réside généralement à ~/.config/doctl/config.yaml
.
Pour définir une valeur de configuration, ajoutez-la au fichier en utilisant le format category.command.subcommand.flag: value
.
compute.droplet.create.size: s-1vcpu-1gb
Le paramètre ci-dessus attribuerait par défaut à toutes les créations de gouttelettes un type de s-1vcpu-1gb
.
Les valeurs par défaut peuvent être remplacées à tout moment en transmettant une nouvelle valeur à l’indicateur de ligne de commande comme d’habitude.
Formats de sortie
doctl
émet généralement une sortie sous forme de tables et de listes lisibles par l’homme. Si vous prévoyez d’utiliser l’outil dans des scripts ou souhaitez des informations plus détaillées, vous pouvez transmettre --output json
pour obtenir le JSON brut à partir de l’API DigitalOcean.
Vous pouvez personnaliser les champs qui sont renvoyés dans les tables en utilisant le --format
drapeau. Exécutez la commande d’origine et notez les noms de colonne dans sa sortie. Vous pouvez les transmettre sous forme de liste séparée par des virgules à --format
, en supprimant tous les espaces qui apparaissent dans les noms présentés. Seuls les champs donnés seront inclus lorsque vous exécuterez la commande modifiée.
Conclusion
Apprentissage doctl
peut vous faire gagner du temps lors de la gestion des ressources de vos comptes DigitalOcean. Il simplifie la création de scripts et vous donne un point de départ lors de la création de vos propres outils de surveillance et d’alerte.
DigitalOcean met régulièrement à jour l’utilitaire. Il prend en charge presque toutes les opérations d’API et tous les types de ressources. Une exception notable est le stockage d’objets Spaces; comme il est compatible avec Amazon S3, DigitalOcean vous conseille d’utiliser plutôt un utilitaire de gestion spécifique à S3.
Vous pouvez trouver complet doctl
documentation sur le site de documentation de DigitalOcean. Le logiciel est également open-source afin que vous puissiez apporter vos propres améliorations à son référentiel GitHub.