Docker Hub
Nous allons maintenant construire une image Docker à partir de notre code source.
Nous allons le faire en dehors de notre DevContainer :
si vous êtes sous Windows, ouvrez un nouveau PowerShell
si vous êtes sous MacOS ou Linux, ouvrez un nouveau Terminal
Naviguez dans le dossier du projet.
Instructions
Jetez un coup d'œil au fichier ./docker/Dockerfile.prod
:
Voici la recette pour construire une image docker avec notre projet.
La construction se déroule en deux phases. Dans la première phase, nous construisons le projet :
Télécharger une image existante node:18-alpine
Copier tous les fichiers du répertoire courant dans l'image
Installer toutes les dépendances
Lancer un build (transpiler le typecript en javascript)
Dans la deuxième phase, nous construisons une image propre avec seulement le strict minimum requis pour faire fonctionner notre API. Nous ne copions que le résultat de la compilation (javascript transpilé) mais pas les sources du script de type, par exemple.
Build
Pour construire l'image, nous exécutons la commande suivante :
L'image est construite, et on peut le voir avec la commande :
Dépôt externe : Docker Hub
Nous allons maintenant télécharger cette image dans le dépôt Docker Hub, où notre serveur, ou notre infrastructure, pourra la télécharger et démarrer le conteneur.
Créez un nouveau compte (gratuit).
Créez un nouveau "Repository", en le donnant le nom devopsapi
:
Tag
Nous voulons maintenant télécharger notre image sur Docker Hub.
Nous devons d'abord changer son nom (autrement dit sa balise) pour qu'elle fasse référence à Docker Hub :
Connexion
Nous devons nous connecter à Docker Hub afin de pousser notre image.
Dans Docker Hub (navigateur), cliquez sur votre profil (en haut à droite), le menu " Profil ", puis " Sécurité ".
Ajouter un nouveau "Access Token". Copiez le jeton d'accès généré, vous ne le verrez qu'une seule fois !
Ensuite, de retour dans votre terminal, exécutez :
À la demande de mot de passe, collez votre jeton d'accès.
Push
Vous êtes maintenant connecté à Docker Hub. Vous pouvez télécharger votre nouvelle image en utilisant :
Votre image est maintenant disponible sur Docker Hub !
Allez jeter un coup d'oeil dans le navigateur !
Tester
Testons notre image ! D'abord arrêtez votre serveur dans votre DevContainer.
Vous verrez :
Vous pouvez maintenant tester votre API qui tourne dans votre image déployée !
D'accord, mais comment déployer cela dans notre infrastructure ?
Dernière mise à jour