1.3 Les bases à savoir
Pour utiliser Docker correctement, il faut d'abord maîtriser quelques principes fondamentaux.
Pour utiliser Docker correctement, il faut d'abord maîtriser quelques principes fondamentaux. Ça vous permettra d'aborder l'outil beaucoup plus sereinement et d'éviter pas mal de situations absurdes (même si on fait tous des erreurs au début, bien sûr !).
De manière générale, avant de toucher à Docker, il faut des bases sur Linux.
1. Savoir utiliser un terminal
En premier lieu, il faut être à l'aise avec la ligne de commande et connaître les utilitaires de base :
cd(change directory) : permet de changer de répertoire.ls(list) : permet de voir ce qui se trouve dans le répertoire courant.touch: permet de créer un fichier vide.cp(copy) : permet de copier un fichier ou un dossier.mv(move) : permet de déplacer ou de renommer une ressource.mkdir(make directory) : permet de créer un dossier.cat: permet d'afficher le contenu complet d'un fichier.lessoumore: permet de lire un fichier page par page (parfait pour les gros fichiers de logs).grep: permet de chercher un mot ou une phrase spécifique dans un fichier.sed/awk: des outils puissants pour manipuler et remplacer des éléments dans un fichier texte.
2. Comprendre l'architecture Linux
Dans un monde idéal, il faudrait également comprendre un peu l'arborescence de Linux. Savoir à quoi servent certains répertoires clés vous sauvera la mise (liste non exhaustive) :
/etc: contient les fichiers de configuration du système et des applications./bin: contient les exécutables binaires de base utilisables dans le terminal./tmp: sert à stocker les fichiers et dossiers temporaires (il est vidé au redémarrage).
3. Avoir un vernis en développement
Enfin, avoir des notions de développement est un énorme plus pour bien "packager" vos applications. Certaines formations prennent d'ailleurs quelques semaines pour expliquer les bases du dev avant de passer à la pratique de l'infrastructure, et c'est une excellente approche.
Parce que soyons honnêtes : packager une application Java sans avoir jamais fait de Java... bon courage ! Même si l'IA peut faire le gros du travail aujourd'hui, restons pragmatiques : on veut comprendre ce que l'on fait et ce que l'on livre.
N'hésitez pas à vous intéresser aux différents langages et à leurs spécificités. Packager du PHP ou du Go, ça n'a rien à voir :
- PHP a besoin d'un serveur web (comme Nginx) associé à un moteur comme PHP-FPM, ou d'un serveur moderne comme FrankenPHP.
- Go, en revanche, est un langage compilé. L'application génère son propre binaire autonome qui embarque directement son serveur.
Le conseil
Faites un petit tour d'horizon des langages et des frameworks actuels pour comprendre les enjeux et les besoins de chacun en matière de configuration.
4. Avoir quelques notions basiques de réseau
Il n'y a pas besoin d'être un ingénieur réseau chevronné, mais Docker manipule énormément cet aspect pour faire communiquer vos applications. Deux concepts vont revenir en boucle et doivent être bien clairs :
- Localhost (ou 127.0.0.1) : En gros, c'est "chez vous". C'est l'adresse de bouclage de votre propre machine. Quand vous tapez ça dans un navigateur, vous dites simplement à votre ordi de se parler à lui-même.
- Les ports : Imaginez que votre ordinateur (ou votre serveur) est un grand immeuble. L'adresse IP, c'est l'adresse du bâtiment dans la rue. Les ports, ce sont les numéros d'appartement ou les portes d'entrée. Par exemple, un serveur web classique écoute par défaut à la porte 80 (pour le HTTP) ou 443 (pour le HTTPS).
- 20 / 21 -> FTP (transfère de fichier)
- 22 -> SSH (connexion priver)
- 25 -> SMTP (email)
- 53 -> DNS (Traduction de nom de domaine)
- 3306 -> MYSQL
- 5432 -> PostgresSQL
Avec ces quelques cordes à votre arc, vous avez déjà tout ce qu'il faut pour commencer Docker de manière propre et sereine !