Les conteneurs sont simplement une instance de l'image que vous utilisez pour les exécuter. L'état d'esprit lors de la création d'une application conteneurisée n'est pas de prendre un conteneur ubuntu frais et propre, par exemple, et de télécharger les applications et les configurations que vous souhaitez y inclure, puis de le laisser s'exécuter.
Vous devez traiter le conteneur comme une instance de votre application, mais votre application est incorporée dans une image. L'utilisation appropriée serait de créer une image personnalisée, dans laquelle vous intégrez tous vos fichiers, configurations, variables d'environnement, etc., dans l'image. En savoir plus sur Dockerfile et comment cela se fait ici
Une fois que vous avez fait cela, vous avez une image qui contient tout, et pour utiliser votre application, il vous suffit d'exécuter l'image avec les paramètres de port appropriés ou d'autres variables dynamiques, en utilisant docker run <your-image>
Exécuter des conteneurs avec un --rm
indicateur est bon pour les conteneurs que vous utilisez pendant très peu de temps juste pour accomplir quelque chose, par exemple, compiler votre application dans un conteneur, ou simplement tester quelque chose qui fonctionne, et vous savez alors que c'est un conteneur de courte durée et vous dites à votre démon Docker qu'une fois son exécution terminée, effacez tout ce qui y est lié et économisez de l'espace disque.
--rm
supprime le conteneur arrêté (celuidocker run
créé), pas l'image sur laquelle il était basé (ce que vous avez téléchargé).