L'utilisation et la compréhension de Docker sont un peu déroutantes maintenant, et j'aimerais demander conseil à tout le monde.
Par exemple :
J'ai actuellement un système Linux avec 8 Go de mémoire.
Je dois exécuter deux environnements sur ce système : les environnements alpha et bêta.
Les environnements alpha et bêta utilisent tous deux leurs propres nginx et mysql.
Ma compréhension actuelle est qu'il existe deux options :
Option 1 :
创建两个 container:container_alpha,container_beta。
在两个container_alpha和container_beta和里面都安装好mysql和nginx
Option 2 :
创建四个 container,在四个container里面都**只**安装
alpha_mysql
alpha_nginx
beta_mysql
beta_nginx
Pour la première option, la configuration, l'utilisation et la gestion seront beaucoup plus simples et plus claires.
Pour l'option 2, chaque conteneur ne correspond qu'à un seul service. Je ne sais pas si cela correspond plus aux principes de docker.
Ou peut-être que ma compréhension de Docker n'est pas encore correcte, alors quelle est la bonne façon d'utiliser Docker ?
Cela dépend de ce que vous considérez comme un service, ou une « unité gérée ».
Si db+nginx+php sont toujours un à un et liés les uns aux autres, je pense qu'il est normal de les traiter comme un service.
Si la base de données a maître-esclave, séparation de lecture et d'écriture, etc., il sera plus pratique de compter un mysql comme service.
De plus, l'option 2 est plus conviviale pour l'expansion. Vous n'avez pas besoin de démonter l'image lorsque vous souhaitez la modifier. Il vous suffit de modifier docker-compose ou d'autres configurations.