Ce blog illustrera comment exposer et déployer plusieurs applications de conteneurs sur le même port en utilisant l'équilibrage de chargement.
Comment exposer plusieurs applications de conteneurs sur le même port avec l'équilibrage de la charge?
L'équilibrage de charge ou le proxy inversé est une technique pour distribuer le trafic à partir de différents conteneurs sur un serveur. L'équilibrage de la charge peut utiliser différents algorithmes de routage, tels que l'algorithme de Round Robin, pour allouer le spam de temps pour exécuter le premier conteneur, puis le deuxième conteneur, et à nouveau revenir au premier conteneur, et ainsi de suite. Cela peut augmenter la disponibilité, la capacité et la fiabilité de l'application.
Pour l'illustration, utilisez la procédure mentionnée.
Étape 1: Créer Dockerfile
Tout d'abord, créez un dockerfile pour conteneuriser l'application. Par exemple, nous avons défini les instructions pour conteneuriser le «principal.aller»App:
De Golang: 1.8Ici, nous avons deux différents «principal.aller»Programmes dans deux répertoires différents. Dans notre scénario, le premier programme utilisera DockerFile pour configurer le service:
Le deuxième programme a également le même dockerfile dans son répertoire. En utilisant ce fichier, nous avons construit la nouvelle image Docker "IMAGE GO1«Cela sera utilisé pour configurer le deuxième service dans le fichier de composition. Pour créer ou construire l'image, vous pouvez passer par notre article associé:
Étape 2: Créer un fichier composé
Ensuite, créez un fichier composé nommé "composer docker.YML”Fichier qui contient les instructions suivantes:
Étape 3: Créez «Nginx.Fichier Conf ”
Après cela, créez le «nginx.confli«Fichier et configurer les services en amont, le port d'écoute de l'équilibreur de charge et définir le proxy»http: // tout /«Pour gérer les services en amont:
utilisateur nginx;Étape 4: tirez les conteneurs
Exécuter le "secouer docker»Commande de tirer les services dans des conteneurs séparés. Ici "-escalader«L'option est utilisée pour générer les deux répliques du premier ou«la toile" service:
docker-compose up -scale web = 2
Pour la vérification, allez au port d'exposition du «nginx”Contaiteur de service et vérifiez s'il accepte le flux à partir de services spécifiés ou non:
À partir de la sortie ci-dessus, on peut observer que nous avons exécuté avec succès plusieurs conteneurs ou services sur le même port.
Conclusion
Pour exécuter ou exposer les applications de conteneurs multiples sur le même port à l'aide d'un équilibreur de charge / proxy inversé, créez d'abord un «nginx.confli”Fichier pour configurer les configurations d'équilibreur de charge telles que les services d'administration, les ports d'écoute et le proxy pour en amont le service. Ensuite, configurez le service d'équilibrage de charge dans le fichier composé. Ce blog a démontré comment exposer et exécuter plusieurs conteneurs ou services sur le même port.