10 projets de docker pratiques qui augmenteront réellement vos compétences et non seulement

DEV - 19/06
Introduction: Pourquoi vos compétences Docker sont toujours nuls (et comment résoudre ce problème) Soyons honnêtes en cours d'exécution Docker ...

Introduction: Pourquoi vos compétences Docker sont toujours nuls (et comment résoudre ce problème)

Soyons honnêtes à courirDocker Run Hello-WorldCela ne signifie pas que vous «connaissez Docker».

Vous avez probablement suivi une douzaine de didacticiels YouTube, j'ai regardé quelques gens faire danser un conteneur dans leur terminal, peut-être même une application Django fonctionner une fois avant qu'elle ne se brisait mystérieusement après un redémarrage.

Mais voici le hic: Docker n'est pas quelque chose que vous comprenez simplement en regardant. C’est quelque chose dans lequel vous êtes bon en faisant surtout lorsque les choses tournent mal.

Les compétences du Docker réel proviennent de la résolution de problèmes réels: des ports cassés, des volumes squameux, des bogues de réseautage étranges qui vous font remettre en question votre existence.

50 € Crédits gratuits pour 30 jours Code promotionnel d'essai: DevLink50

C’est là que cet article entre en jeu.

J'ai collecté 10 projets Docker pratiques, pas ennuyeux et utiles qui vous obligent à apprendre les choses que la plupart des tutoriels sautent. Des trucs comme:

  • Reliant plusieurs conteneurs de la bonne façon
  • En utilisantcomposer dockercomme un sorcier
  • Débogage des conteneurs qui se comportent mal dans la production
  • Rendre votre environnement de développement pare-balles (et peut-être même beau)

Ce ne sont pas des monstres Kubernetes de qualité d'entreprise. Ils sont petits, amusants et étonnamment éducatifs parfaits pour niveler à votre rythme.

Commençons par le plus facile et construisons à partir de là. Votre futur cerveau DevOps vous remerciera.

Projet 1: conteneuriser un site Web statique (car vous devez commencer quelque part)

Ce que vous construisez:

Un site Web statique simple servi via Docker à l'aide de Nginx ou HTTP-Server. Rien d'extraordinaire juste HTML, CSS, peut-être une touche de JS.

Mais voici la capture: vous le configurerez proprement avec un dockerfile, le servir sur localhost et les changements de rechargement chaud.

Compétences que vous apprendrez:

  • Écrire un baseDockerfile
  • En utilisantCOPIE,EXPOSER, etCMDcorrectement
  • Montant des répertoires locaux avec des volumes
  • CONTAREURS RUNACTIVE avec transfert de port (-P 8080: 80)

Comment ça marche:

  1. Créez un dossier avec votre HTML / CSS / JS.
  2. Écrivez un dockerfile qui utilise l'image de base Nginx.
  3. Montez votre dossier local dans le conteneur afin que vous n'ayez pas besoin de reconstruire chaque fois que vous modifiez un fichier.
  4. Servir et voirLocalHost: 8080.
# DockerFile simple à l'aide de nginxfrom nginx: alpinecopopy. / usr / share / nginx / htmlexpose 80

Essayez ceci:

docker build -t mon-site .docker run -p 8080: 80 my-static-site

Vous voulez un rechargement en direct? Utiliserserveur httpavec nœud:

Dockerfile à partir de nœud: alpinerun npm install -g http-serverworkdir / appcopy. / appexpose 8080cmd ["http-server", ".", "-p", "8080", "-c-1"]

Puis courez:

docker build -t my-live .docker run -p 8080: 8080 -v $ {pwd}: / app my-live-site

Maintenant, chaque fois que vous modifiez un fichier, actualisez simplement le navigateur. Pas de reconstruction.

Pourquoi cela compte:

Ceci est votre «Hello World», mais avec du vrai muscle. Vous apprenez à:

  • Servir les fichiers dans les conteneurs
  • Gérer les ports
  • Utilisez des volumes pour éviter les reconstructions
  • Créez un modèle mental de base du système de fichiers de Docker

Vous posez les bases. La partie ennuyeuse. Mais ne le sautez pas, les gens qui se précipitent à travers cela sont généralement frappés dans le projet 7.

Projet 2: Construisez votre portefeuille de développement dans un conteneur Docker

Ce que vous construisez:

Un site de portefeuille réagit, Vue, Svelte, Astro, choisissez votre poison conteneurisé pour Dev et Prod. Bonus: vous allez configurer une version en plusieurs étapes afin que votre image finale ne soit pas gonflée avec des déchets de nœud.

Vous partirez de:NPM Run DevSur votre ordinateur por...
[Courte citation de 8% de l'article original]

Loading...