Maison > interface Web > js tutoriel > Docker en développement : Épisode 1

Docker en développement : Épisode 1

Susan Sarandon
Libérer: 2025-01-10 11:23:43
original
861 Les gens l'ont consulté

Docker in development: Episode 1

``Dans cette série, nous explorerons la motivation et les avantages de l'utilisation de Docker dans le développement. Nous allons donner des conseils quotidiens qui nous ont aidé à avancer dans son utilisation, axés sur le développement de Ruby on Rails et React.

Cette série n’expliquera pas les concepts fondamentaux de Docker. Si vous ne les connaissez pas déjà, je vous suggère fortement de lire la documentation officielle de Docker puis de revenir.

Motivation
Il s’agit d’une expérience personnelle (et d’équipe !). Vous pourriez vous retrouver dans des situations similaires, et cela pourrait vous aider à avancer et à faire les premiers pas.

Jusqu'à il y a quelques mois, ma configuration standard pour développer Ruby on Rails, des applications Ruby minimalistes et des applications React était tout simplement simple.

Pour Ruby/Ruby on Rails, j'ai juste installé chruby, ruby-install (et les versions Ruby dont j'avais besoin, disons 2.3, 2.5 et même 2.6 !), cloné les projets, installé les gemmes à l'aide du bundler, Postgres (car nous utilisons principalement Postgres), et j'étais prêt à partir. Bien sûr, si j'avais besoin de Redis ou d'autres bases de données, je devais l'installer.

De même, pour les projets React, je viens d'installer node et d'installer les dépendances. Ce processus d'installation des interpréteurs, des dépendances, etc., à l'aide d'homebrew (ou d'apt-get si vous utilisez Linux) est simple mais prend un certain temps.

Il y a un mois, j'avais une tâche à accomplir : corriger un petit bug dans une application Rails 3, en plus de Ruby 1.9.3 ! C'était un peu plus difficile qu'avec les nouvelles versions de Ruby. Pas pour l'interprète lui-même, mais pour les dépendances du projet. Au fil du temps, les anciennes dépendances peuvent être plus difficiles à installer en raison de leurs dépendances. Vous pourriez avoir des versions plus récentes de vos dépendances sur votre ordinateur, et l'installation d'éléments plus anciens peut prendre du temps.

Après y avoir réfléchi un peu, j'ai décidé de dockeriser l'application. Pour être honnête, je ne sais pas si cela a pris plus de temps que de se battre avec les versions interpréteur/dépendances, mais le résultat a payé. Non seulement le bug a été corrigé facilement, mais depuis lors, j'ai décidé de dockeriser toutes les applications sur lesquelles je travaille (même certaines applications que vous pourriez utiliser quotidiennement comme nous le verrons plus tard), et à partir de maintenant, j'utilise Docker exclusivement pour le développement local. La configuration native n'est plus nécessaire.

Avantages
Certains des avantages sont évidents (surtout si vous utilisez déjà Docker), mais nous les passerons en revue quand même afin d'exposer des arguments plus solides.

L'ensemble de votre projet explique comment est mis en place d'un point de vue système : quelle base de données, quels services, etc.
Les nouveaux développeurs peuvent facilement rejoindre le projet et en exécutant simplement une commande, ils seront prêts à partir.
Votre application ne changera pas à mesure que votre environnement local change. Normalement, pour, disons, un bundler, cela ne posera pas de problème, mais vous pourriez finir par utiliser d'autres binaires ou bibliothèques au sein de votre système qui pourraient changer au fil du temps.
Questions
Ce sont des questions que je me suis posées (et vous pourriez les avoir aussi) :

Est-ce que je n'aurai pas beaucoup d'espace disque occupé par les images Docker ?
Oui, vous l'aurez. Mais si vous le souhaitez, vous pouvez simplement les supprimer et les recréer lorsque vous en avez besoin. Ce n’est pas grave. Si vous ne souhaitez pas créer à chaque fois, vous pouvez transférer vos images vers un référentiel (docker hub en est un exemple).

Et la performance ? Est-ce que cela consomme beaucoup de ressources ?
Réponse courte : non. Ce sont des processus réguliers et ils consomment les mêmes ressources qu’ils consommeraient si vous aviez installé toutes les exigences de manière native. Vous pouvez rechercher par vous-même en exécutant Docker Statistics !

Avez-vous d'autres questions ? Contactez-nous !

Conclusion
Le bilan, pour moi, a été positif. Depuis que j'utilise Docker, les choses sont les mêmes en termes de temps de développement, de mise en route, etc. En plus des avantages que nous avons déjà mentionnés.

Rejoignez-nous dans le prochain épisode !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal