Explication détaillée de la commande docker network
Jetons d'abord un coup d'œil à toutes les sous-commandes du réseau :
(Tutoriel recommandé : tutoriel docker)
docker network create docker network connect docker network ls docker network rm docker network disconnect docker network inspect
一, Créer un réseau
Lors de l'installation de Docker Engine, un réseau de pont docker0 par défaut sera automatiquement créé. De plus, vous pouvez également créer votre propre réseau de pont ou réseau superposé.
Le réseau pont est attaché à un seul hôte exécutant Docker Engine, tandis que le réseau superposé peut couvrir plusieurs environnements hôtes exécutant leurs moteurs Docker respectifs.
Créer un réseau de ponts est relativement simple comme suit :
# 不指定网络驱动时默认创建的bridge网络 docker network create simple-network # 查看网络内部信息 docker network inspect simple-network # 应用到容器时,可进入容器内部使用ifconfig查看容器的网络详情
Mais créer un réseau de superposition nécessite certains prérequis (pour des opérations spécifiques, veuillez vous référer au contenu associé du réseau de conteneurs Docker) :
- key-value store(Engine支持Consul、Etcd和ZooKeeper等分布式存储的key-value store) - 集群中所有主机已经连接到key-value store - swarm集群中每个主机都配置了下面的daemon参数 - –cluster-store - –cluster-store-opt - –cluster-advertise
Ensuite, créez un réseau superposé :
# 创建网络时,使用参数`-d`指定驱动类型为overlay docker network create -d overlay my-multihost-network
En termes d'utilisation de l'option --subnet pour créer un sous-réseau, le réseau pont ne peut spécifier qu'un seul sous-réseau, tandis que le réseau superposé prend en charge plusieurs sous-réseaux.
Les réseaux créés sous le pont et les pilotes de réseau superposés peuvent spécifier différents paramètres.
2. Connectez le conteneur
Créez trois conteneurs. Les deux premiers utilisent le réseau par défaut pour démarrer le conteneur, et le troisième utilise le réseau de pont personnalisé pour démarrer le conteneur. Ajoutez ensuite le deuxième conteneur au réseau personnalisé. Les conditions réseau de ces trois conteneurs sont les suivantes :
Le premier conteneur : uniquement le docker0 par défaut
Le deuxième conteneur : appartient à deux réseaux - docker0, réseau personnalisé
Le troisième conteneur : appartient uniquement au réseau personnalisé
Remarque : le démarrage du réseau spécifié via le conteneur écrasera le réseau de pont par défaut docker0.
# 创建三个容器 conTainer1,container2,container3 docker run -itd --name=container1 busybox docker run -itd --name=container2 busybox # 创建网络mynet docker network create -d bridge --subnet 172.25.0.0/16 mynet # 将容器containerr2连接到新建网络mynet docker network connect mynet container2 # 使用mynet网络来容器container3 docker run --net=mynet --ip=172.25.3.3 -itd --name=container3 busybox # 查看这三个容器的网络情况 docker network inspect container1 # docker0 docker network inspect container2 # docker0, mynet docker network inspect container3 # mynet
3. La différence entre le réseau par défaut et le réseau de pont personnalisé
Docker réseau par défaut0 : tous les hôtes du réseau ne peuvent accéder les uns aux autres qu'en utilisant IP. Les conteneurs créés avec l'option --link peuvent accéder directement au nom du conteneur lié (nom-du-conteneur) en tant que nom d'hôte.
Réseau personnalisé (pont) : en plus de l'accès IP, tous les hôtes du réseau peuvent également accéder directement les uns aux autres en utilisant le nom du conteneur (container-name) comme nom d'hôte.
# 进入container2内部 docker attach container2 ping -w 4 container3 # 可访问 ping -w 4 container1 # 不可访问 ping -w 4 172.17.0.2 # 可访问container1的IP # Ctrl+P+Q退出容器,让container2以守护进程运行
4. La différence entre le réseau par défaut et le réseau de pont personnalisé dans la connexion au conteneur
L'utilisation d'un lien (lien d'héritage) dans le réseau par défaut a les fonctions suivantes :
- 使用容器名作为hostname - link容器时指定alias: --link=<Container-Name>:<Alias> - 配合--icc=false隔离性,实现容器间的安全连接 - 环境变量注入
Auto L'utilisation de docker net dans un réseau défini fournit les fonctions suivantes :
- 使用DNS实现自动化的名称解析 - 一个网络提供容器的安全隔离环境 - 动态地attach与detach到多个网络 - 支持与--link选项一起使用,为链接的容器提供别名(可以是尚不存在链接容器,与默认容器中–link使用的最大差别)
Le lien dans le réseau par défaut est statique et ne permet pas au conteneur de liens de redémarrer, tandis que le lien dans le réseau personnalisé est dynamique et prend en charge le redémarrage du conteneur de liens. (Et les changements IP)
Par conséquent, le conteneur lié lors de l'utilisation de --link doit être créé à l'avance dans le réseau par défaut, mais n'a pas besoin d'être pré-construit dans le réseau personnalisé.
Lorsque vous utilisez Docker Network Connectct pour connecter un conteneur à un nouveau réseau, lors de la liaison du même conteneur avec le paramètre --link, vous pouvez spécifier différents alias, qui sont destinés à différents réseaux.
# 运行容器使用自定义网络,同时使用--link链接尚不存在的container5容器 docker run --net=mynet -itd --name=container4 --link container5:c5 busybox # 创建容器container5 docker run --net=mynet -itd --name=container5 --link container4:c4 busybox # 虽然是相同容器,但是在不同的网络环境连接中可以不同的alias链接 docker network connect --link container5:foo local_alias container4 docker network connect --link container4:bar local_alias container5
5. Spécifiez l'alias de portée réseau du conteneur (alias de portée réseau)
L'alias de portée réseau est l'alias du conteneur spécifié auquel d'autres conteneurs peuvent accéder même portée réseau.
À la différence des alias de lien, les alias de lien sont fournis par l'utilisateur du conteneur de liens et ne peuvent être utilisés que par lui-même, tandis que les alias dans la plage réseau spécifiée sont fournis par le conteneur pour être utilisés par d'autres conteneurs du réseau ; .
Alias à l'échelle du réseau : plusieurs conteneurs dans le même réseau peuvent spécifier le même alias. Bien entendu, seul le premier conteneur avec l'alias spécifié prendra effet
Uniquement lorsque le premier conteneur est fermé. l'alias du deuxième conteneur qui spécifie le même alias prendra effet.
docker run --net=mynet -itd --name=container6 --net-alias app busybox docker network connect --alias scoped-app local_alias container6 docker run --net=isolated_nw -itd --name=container7 --net-alias app busybox docker network connect --alias scoped-app local_alias container7 # 在container4中 docker attach container4 ping app # 访问container6的IP # 从container4中以守护进程运行退出:Ctrl+P+Q docker stop container6 docker attach container4 ping app # 访问的container7的IP
6. Déconnectez et supprimez le réseau
# 容器从mynet网络中断开(它将无法再网络中的容器container3通讯) docker network disconnect mynet container2 # 测试与容器container3失败 docker attach container2 ping contianer3 # 访问失败
Dans un environnement réseau multi-hôtes, le conteneur apparaîtra déjà lors de la connexion d'un conteneur au réseau avec un nom de conteneur supprimé Erreur Connecté au réseau,
À ce stade, vous devez supprimer de force le nouveau conteneur avec docker rm -f, réexécuter et vous connecter au réseau.
La suppression d'un réseau nécessite que tous les conteneurs du réseau se ferment ou se déconnectent de ce réseau. La commande de suppression ne peut être utilisée que :
# 断开最后一个连接到mynet网络的容器 docker network disconnet mynet container3 # 移除网络 docker network rm mynet
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)

Sujets chauds



LLaMA-3 (LargeLanguageModelMetaAI3) est un modèle d'intelligence artificielle générative open source à grande échelle développé par Meta Company. Il ne présente aucun changement majeur dans la structure du modèle par rapport à la génération précédente LLaMA-2. Le modèle LLaMA-3 est divisé en différentes versions, notamment petite, moyenne et grande, pour répondre aux différents besoins d'application et ressources informatiques. La taille des paramètres des petits modèles est de 8B, la taille des paramètres des modèles moyens est de 70B et la taille des paramètres des grands modèles atteint 400B. Cependant, lors de la formation, l'objectif est d'atteindre une fonctionnalité multimodale et multilingue, et les résultats devraient être comparables à GPT4/GPT4V. Installer OllamaOllama est un grand modèle de langage open source (LL

L'architecture système distribuée PHP atteint l'évolutivité, les performances et la tolérance aux pannes en distribuant différents composants sur les machines connectées au réseau. L'architecture comprend des serveurs d'applications, des files d'attente de messages, des bases de données, des caches et des équilibreurs de charge. Les étapes de migration des applications PHP vers une architecture distribuée comprennent : Identifier les limites des services Sélectionner un système de file d'attente de messages Adopter un cadre de microservices Déploiement vers la gestion de conteneurs Découverte de services

Explication détaillée et guide d'installation pour les nœuds de pignon Cet article introduira l'écosystème de pignon en détail - nœuds PI, un rôle clé dans l'écosystème de pignon et fournir des étapes complètes pour l'installation et la configuration. Après le lancement du réseau de test de la blockchain pèse, les nœuds PI sont devenus une partie importante de nombreux pionniers participant activement aux tests, se préparant à la prochaine version du réseau principal. Si vous ne connaissez pas encore Pinetwork, veuillez vous référer à ce qu'est Picoin? Quel est le prix de l'inscription? PI Utilisation, exploitation minière et sécurité. Qu'est-ce que Pinetwork? Le projet Pinetwork a commencé en 2019 et possède sa pièce exclusive de crypto-monnaie PI. Le projet vise à en créer un que tout le monde peut participer

Réponse : Les microservices PHP sont déployés avec HelmCharts pour un développement agile et conteneurisés avec DockerContainer pour l'isolation et l'évolutivité. Description détaillée : utilisez HelmCharts pour déployer automatiquement des microservices PHP afin de réaliser un développement agile. Les images Docker permettent une itération rapide et un contrôle de version des microservices. Le standard DockerContainer isole les microservices et Kubernetes gère la disponibilité et l'évolutivité des conteneurs. Utilisez Prometheus et Grafana pour surveiller les performances et l'état des microservices, et créer des alarmes et des mécanismes de réparation automatiques.

Il existe de nombreuses façons d'installer Deepseek, notamment: Compiler à partir de Source (pour les développeurs expérimentés) en utilisant des packages précompilés (pour les utilisateurs de Windows) à l'aide de conteneurs Docker (pour le plus pratique, pas besoin de s'inquiéter de la compatibilité), quelle que soit la méthode que vous choisissez, veuillez lire Les documents officiels documentent soigneusement et les préparent pleinement à éviter des problèmes inutiles.

La conteneurisation améliore les performances des fonctions Java des manières suivantes : Isolation des ressources : garantit un environnement informatique isolé et évite les conflits de ressources. Léger - consomme moins de ressources système et améliore les performances d'exécution. Démarrage rapide - réduit les délais d'exécution des fonctions. Cohérence : dissociez les applications et l'infrastructure pour garantir un comportement cohérent dans tous les environnements.

Déployez des applications Java EE à l'aide de conteneurs Docker : créez un fichier Docker pour définir l'image, créez l'image, exécutez le conteneur et mappez le port, puis accédez à l'application dans le navigateur. Exemple d'application JavaEE : l'API REST interagit avec la base de données, accessible sur localhost après déploiement via Docker.

Réponse : Utilisez PHPCI/CD pour réaliser une itération rapide, y compris la configuration de pipelines CI/CD, de tests automatisés et de processus de déploiement. Configurer un pipeline CI/CD : sélectionnez un outil CI/CD, configurez le référentiel de code et définissez le pipeline de build. Tests automatisés : rédigez des tests unitaires et d'intégration et utilisez des frameworks de test pour simplifier les tests. Cas pratique : Utilisation de TravisCI : Installez TravisCI, définissez le pipeline, activez le pipeline et visualisez les résultats. Mettez en œuvre la livraison continue : sélectionnez les outils de déploiement, définissez les pipelines de déploiement et automatisez le déploiement. Avantages : améliorez l’efficacité du développement, réduisez les erreurs et raccourcissez les délais de livraison.
