


Cet article présente principalement Docker la connexion multi-conteneurs (en prenant Tomcat+Mysql comme exemple) Docker fournit une méthode d'accès direct par plusieurs conteneurs, qui permet à plusieurs conteneurs d'accéder directement à eux. accès Accès via les ports réseau
Docker fournit une méthode d'accès direct par plusieurs conteneurs. Le moyen le plus simple consiste à utiliser directement le paramètre -p de mappage de port pour spécifier le port mappé ou -P pour mapper tous les ports. Accédez directement via le port réseau pour l'accès.
Mais la méthode de mappage des ports réseau n'est pas le seul moyen de connecter plusieurs conteneurs dans Docker. Une méthode plus sûre consiste à utiliser le système de connexion de Docker (--link) Lorsque les conteneurs sont connectés ensemble, le conteneur destinataire peut voir les informations du conteneur source.
Prenons Tomcat + Mysql comme exemple pour établir une connexion entre les conteneurs
Pour établir une connexion directement entre les conteneurs, utilisez l'option --link
--link
Ici, nous construisons un service Tomcat + Mysql pour illustrer comment établir une connexion entre deux ou plusieurs conteneurs.
Pour établir une connexion au conteneur, vous devez vous fier au nom du conteneur. Utilisez --name pour spécifier le nom du conteneur source comme mysql
docker run --name mysql -d gsoft/mysql:5.6
Ensuite, créez un tomcat. conteneur et se connecter à mysql Le conteneur monte
et le code est le suivant :
docker run --name tomcat -d -p 80:8080 --link mysql:mysql gsoft/tomcat:7.0
Ici, l'option --link permet de préciser que le conteneur à connecter est mysql .
Informations de communication du conteneur
Après avoir établi une connexion entre deux conteneurs, le conteneur récepteur (Destinataire) devra inévitablement accéder aux ressources du conteneur source (Source). Lorsque nous établissons une connexion pour le conteneur, le conteneur source n'utilise pas -p/-P pour spécifier le port à exposer lors de sa création, alors comment accéder aux informations du conteneur source ?
Afin de permettre au conteneur récepteur d'accéder aux informations du conteneur source, Docker propose deux méthodes :
-
EnvironnementVariables
/etc/hosts file
Variables d'environnement
Lorsque Docker se connectera au conteneur, il utilisera --link Les paramètres fournis créent automatiquement certaines variables d'environnement dans le conteneur destinataire, y compris les variables d'environnement définies à l'aide de la commande ENV dans le fichier Dockerdu conteneur source et lorsque le conteneur source démarre (exécution du docker), utilisez - e ou - -env, la variable d'environnement spécifiée par le paramètre --env-file.
contient principalement les variables d'environnement suivantes, en supposant ici alias=mysql.
<alias>_PORT <alias>_PORT_<port>_<protocol> <alias>_PORT_<port>_<protocol>_ADDR <alias>_PORT_<port>_<protocol>_PORT <alias>_PORT_<port>_<protocol>_PROTO <alias>_NAME
Par exemple :
#docker run -i -t --rm --link mysql:mysql ubuntu:14.04 env PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin HOSTNAME=9c74aa611463 TERM=xterm MYSQL_PORT=tcp://172.17.0.3:3306 MYSQL_PORT_3306_TCP=tcp://172.17.0.3:3306 MYSQL_PORT_3306_TCP_ADDR=172.17.0.3 MYSQL_PORT_3306_TCP_PORT=3306 MYSQL_PORT_3306_TCP_PROTO=tcp MYSQL_NAME=/desperate_ritchie/mysql HOME=/root
Dans l'exemple ci-dessus, l'alias du conteneur est spécifié comme msyql, donc toutes les variables d'environnement commencent par MYSQL_.
Notez que si le conteneur source est redémarré, les informations sur les variables d'environnement dans le conteneur de réception ne seront pas automatiquement mises à jour Par conséquent, si vous souhaitez utiliser l'adresse IP du conteneur source, veuillez utiliser les informations /etc/ Host configurées dans les hôtes.
Fichier/etc/hosts
En plus des variables d'environnement, Docker met également à jour les informations sur les hôtes dans le fichier /etc/hosts du conteneur de réception.
# docker run -i -t --rm --link mysql:mysql ubuntu:14.04 /bin/bash # cat /etc/hosts 127.0.0.1 localhost ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters 172.17.0.3 mysql 115346bdb403 172.17.0.5 09bdf7805133
Comme le montre ce qui précède, deux informations supplémentaires sont ajoutées au fichier hosts du conteneur de réception, l'adresse IP et l'alias locaux et l'adresse IP et l'alias du conteneur source (mysql) .
Contrairement aux variables d'environnement, si le conteneur source est redémarré, les informations dans /etc/hosts dans le conteneur de réception seront automatiquement mises à jour.
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!

MySQL est un système de gestion de base de données relationnel open source qui est largement utilisé dans le développement Web. Ses caractéristiques clés incluent: 1. Prend en charge plusieurs moteurs de stockage, tels que InNODB et Myisam, adaptés à différents scénarios; 2. Fournit des fonctions de réplication à esclave maître pour faciliter l'équilibrage de la charge et la sauvegarde des données; 3. Améliorez l'efficacité de la requête grâce à l'optimisation des requêtes et à l'utilisation d'index.

SQL est utilisé pour interagir avec la base de données MySQL pour réaliser l'ajout de données, la suppression, la modification, l'inspection et la conception de la base de données. 1) SQL effectue des opérations de données via des instructions SELECT, INSERT, UPDATE, DELETE; 2) Utiliser des instructions Create, Alter, Drop pour la conception et la gestion de la base de données; 3) Les requêtes complexes et l'analyse des données sont mises en œuvre via SQL pour améliorer l'efficacité de la prise de décision commerciale.

Les opérations de base de MySQL incluent la création de bases de données, les tables et l'utilisation de SQL pour effectuer des opérations CRUD sur les données. 1. Créez une base de données: CreatedAtAbaseMy_First_DB; 2. Créez un tableau: CreateTableBooks (idIntauto_inCmentPrimaryKey, TitleVarchar (100) notnull, AuthorVarchar (100) notnull, publied_yearint); 3. Données d'insertion: INSERTINTOBOOKS (titre, auteur, publié_year) VA

Le rôle principal de MySQL dans les applications Web est de stocker et de gérer les données. 1.MySQL traite efficacement les informations utilisateur, les catalogues de produits, les enregistrements de transaction et autres données. 2. Grâce à SQL Query, les développeurs peuvent extraire des informations de la base de données pour générer du contenu dynamique. 3.MySQL fonctionne basé sur le modèle client-serveur pour assurer une vitesse de requête acceptable.

Les étapes pour construire une base de données MySQL incluent: 1. Créez une base de données et une table, 2. Insérer des données et 3. Conduisez des requêtes. Tout d'abord, utilisez les instructions CreateDatabase et CreateTable pour créer la base de données et la table, puis utilisez l'instruction InsertInto pour insérer les données, et enfin utilisez l'instruction SELECT pour interroger les données.

MySQL convient aux débutants car il est facile à utiliser et puissant. 1.MySQL est une base de données relationnelle et utilise SQL pour les opérations CRUD. 2. Il est simple à installer et nécessite la configuration du mot de passe de l'utilisateur racine. 3. Utilisez l'insertion, la mise à jour, la suppression et la sélection pour effectuer des opérations de données. 4. OrderBy, où et jointure peut être utilisé pour des requêtes complexes. 5. Le débogage nécessite de vérifier la syntaxe et d'utiliser Expliquez pour analyser la requête. 6. Les suggestions d'optimisation incluent l'utilisation d'index, le choix du bon type de données et de bonnes habitudes de programmation.

MySQL convient aux débutants car: 1) facile à installer et à configurer, 2) Riches Ressources d'apprentissage, 3) Syntaxe SQL intuitive, 4) Prise en charge de l'outil puissant. Néanmoins, les débutants doivent surmonter des défis tels que la conception de la base de données, l'optimisation des requêtes, la gestion de la sécurité et la sauvegarde des données.

Oui, sqlisaprogrammingNanguages en matière de responsabilité de responsabilité.


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

ZendStudio 13.5.1 Mac
Puissant environnement de développement intégré PHP

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

Version crackée d'EditPlus en chinois
Petite taille, coloration syntaxique, ne prend pas en charge la fonction d'invite de code

Navigateur d'examen sécurisé
Safe Exam Browser est un environnement de navigation sécurisé permettant de passer des examens en ligne en toute sécurité. Ce logiciel transforme n'importe quel ordinateur en poste de travail sécurisé. Il contrôle l'accès à n'importe quel utilitaire et empêche les étudiants d'utiliser des ressources non autorisées.

Dreamweaver CS6
Outils de développement Web visuel