


Concentrez-vous sur la façon d'utiliser différents répertoires dans Docker Service
Docker est une technologie de conteneurisation très populaire qui permet de créer, déployer et exécuter des applications rapidement et efficacement. Docker Service est l'un des mécanismes les plus couramment utilisés pour la gestion des clusters Docker. À l'aide du service Docker, les utilisateurs peuvent combiner plusieurs conteneurs Docker en un seul service pour obtenir une haute disponibilité, un équilibrage de charge et d'autres objectifs. Cet article se concentrera sur la façon d'utiliser différents répertoires dans Docker Service.
Qu'est-ce que le service Docker ?
Docker Service est l'un des mécanismes de gestion du cluster Docker. Il peut combiner plusieurs conteneurs Docker en un seul service. Docker Service implémente des fonctions telles que la haute disponibilité, l'équilibrage de charge et l'expansion automatique, qui peuvent aider les utilisateurs à optimiser les services et les applications.
Docker Service prend en charge différentes stratégies de déploiement, telles que la réplique et la globalité. Lorsqu'ils utilisent la stratégie de réplication, les utilisateurs peuvent définir le nombre de conteneurs à lancer, et Docker Engine déploiera et gérera automatiquement les instances de conteneurs sur le cluster. Lors de l'utilisation de la stratégie globale, Docker Engine démarrera une copie du conteneur et la déploiera sur chaque nœud du cluster.
Avantages de l'utilisation du service Docker
L'utilisation du service Docker peut apporter de nombreux avantages, en voici quelques-uns principaux :
- Haute disponibilité : le service Docker peut facilement atteindre une haute disponibilité des conteneurs, même si un certain nœud tombe en panne, il peut également démarrez automatiquement de nouvelles instances de conteneur sur d'autres nœuds via la fonction d'équilibrage automatique du conteneur.
- Équilibrage de charge : l'utilisation du service Docker peut facilement réaliser un équilibrage de charge, de sorte que l'application de l'utilisateur soit toujours dans le meilleur état sans avoir à prêter attention aux problèmes d'équilibrage de charge.
- Extension automatique : Docker Service prend en charge l'expansion automatique. Les utilisateurs n'ont qu'à ajuster le nombre de conteneurs pour réaliser l'expansion de l'application.
Comment Docker Service utilise-t-il différents répertoires ?
Docker Service utilise le répertoire où se trouve le Dockerfile comme contexte de construction de l'image du conteneur par défaut. Cependant, lorsque nous devons créer différentes images dans différents répertoires, nous devons utiliser différents contextes de construction.
Ce qui suit explique comment utiliser différents répertoires pour créer des images Docker et utiliser le service Docker pour déployer des applications.
- Créer la structure de répertoires
Tout d'abord, nous créons la structure de répertoires suivante :
. ├── dockerfiles │ ├── web1 │ │ ├── Dockerfile │ │ └── index.html │ └── web2 │ ├── Dockerfile │ └── index.html ├── docker-compose.yml └── services.yml
Dans le répertoire dockerfiles, nous avons créé deux répertoires, web1 et web2 respectivement. Chaque répertoire contient un fichier Dockerfile et un fichier index.html. Parmi eux, le fichier Dockerfile est utilisé pour créer l'image Docker et le fichier index.html est utilisé pour tester si le conteneur fonctionne normalement.
Dans le fichier services.yml, nous définissons un service nommé web pour déployer deux conteneurs, web1 et web2.
- Écrire des Dockerfiles
Dans notre exemple, nous avons créé un Dockerfile pour web1 et web2 respectivement. Ils sont les suivants :
Fichier Dockerfile dans le répertoire web1 :
FROM nginx COPY index.html /usr/share/nginx/html
Fichier Dockerfile dans le répertoire web2 :
FROM nginx WORKDIR /usr/share/nginx/html COPY index.html .
Ici, nous utilisons différents fichiers Dockerfile et utilisons différents contextes de construction dans chaque fichier. Le Dockerfile de web1 utilise la directive COPY, qui copie le fichier index.html du contexte de construction spécifié dans le conteneur. Le Dockerfile web2 utilise l'instruction WORKDIR et l'instruction COPY, qui définiront le répertoire de travail sur /usr/share/nginx/html et copieront le fichier index.html du contexte de construction vers le conteneur.
- Écriture du fichier docker-compose.yml
Nous utilisons toujours le fichier docker-compose.yml pour définir nos services. Le contenu du fichier est le suivant :
version: '3.7' services: web1: build: context: ./dockerfiles/web1 image: web1 deploy: replicas: 2 ports: - 8081:80 web2: build: context: ./dockerfiles/web2 image: web2 deploy: replicas: 3 ports: - 8082:80
Dans le fichier docker-compose.yml, nous définissons deux services : web1 et web2, qui utilisent respectivement des contextes de build différents. Dans le même temps, nous spécifions également les attributs de réplicas et de ports de chaque service pour contrôler le nombre de conteneurs et le mappage des ports.
- Déployer le service
Enfin, nous utilisons la commande Docker Stack pour déployer le service :
$ docker stack deploy -c services.yml myapp
Une fois l'exécution de la commande terminée, nous pouvons utiliser la commande suivante pour afficher l'état du service :
$ docker stack ps myapp
- Testez le service
Une fois le déploiement du service terminé, nous pouvons utiliser le navigateur pour accéder aux URL suivantes afin de tester si les services web1 et web2 fonctionnent correctement :
service web1 :
http://localhost:8081
service web2 :
http://localhost:8082
Si tout va bien, nous verrons le index.html sur le contenu de chaque fichier de service.
Résumé
Dans cet article, nous avons présenté comment utiliser différents répertoires pour la création de conteneurs dans Docker Service. Nous avons créé deux services avec des Dockerfiles différents et défini le contexte de construction des services dans le fichier docker-compose.yml. Enfin, nous avons déployé le service et testé son bon fonctionnement. Cela offre aux utilisateurs utilisant le service Docker un moyen pratique de créer des images de conteneurs dans différents répertoires.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

L'article détaille les applications de déploiement de Docker Swarm, couvrant la préparation, les étapes de déploiement et les mesures de sécurité pendant le processus.

L'article explique les pods, déploiements et services de Kubernetes, détaillant leurs rôles dans la gestion des applications conteneurisées. Il explique comment ces composants améliorent l'évolutivité, la stabilité et la communication dans les applications. (159 caractères)

L'article traite des applications de mise à l'échelle dans Kubernetes à l'aide de l'échelle manuelle, HPA, VPA et Autoscaler en cluster, et fournit les meilleures pratiques et outils pour surveiller et automatiser l'échelle.

Cet article détaille la mise en œuvre de la limitation des taux et des quotas de ressources dans Docker. Il couvre les limites du processeur, de la mémoire et des E / S à l'aide de CGROUPS, mettant l'accent sur les meilleures pratiques pour prévenir l'épuisement des ressources. Limitation du taux de réseau, nécessitant des outils externes comme

L'article examine la mise en œuvre des mises à jour de roulement dans Docker Swarm pour mettre à jour les services sans temps d'arrêt. Il couvre les services de mise à jour, la définition des paramètres de mise à jour, la surveillance des progrès et la garantie de mises à jour en douceur.

L'article discute de la gestion des services dans Docker Swarm, en se concentrant sur la création, la mise à l'échelle, la surveillance et la mise à jour sans temps d'arrêt.

L'article examine la gestion des déploiements de Kubernetes, en se concentrant sur la création, les mises à jour, la mise à l'échelle, la surveillance et l'automatisation à l'aide de divers outils et meilleures pratiques.

L'article traite des stratégies pour optimiser Docker pour les applications à faible latence, en se concentrant sur la minimisation de la taille de l'image, en utilisant des images de base légères et en ajustant l'allocation des ressources et les paramètres du réseau.
