IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Docker Discussion :

résolution de nom entre 2 containers


Sujet :

Docker

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 278
    Par défaut résolution de nom entre 2 containers
    Bonjour à tous,
    j'ai une problématique que je n'arrive pas a résoudre.
    J'ai créé 2 container contenant chacun une application indépendante, on va dire A et B.

    L'application A doit communiquer avec l'application B via SOAP. Le prérequis de A est que A et B aient un nom de domaine commun. (exemple : A = glpi.localhost / B = pm.glpi.localhost ).
    DAns la conf de mon app A je dois obligatoirement mettre l'url de B donc http://pm.glpi.localhost
    Je ne trouve pas ce qu'il faut configurer pour que cela fonctionne

    La liaison est ok via les nom des services ou l'IP mais SOAP a cette exigence du nom de domaine.

    Savez vous ce qu'il est possible de faire ?
    Erreur PHP (Je ne pense pas que ca vous aides mais bon):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PHP Warning(2): SoapClient::SoapClient(): I/O warning : failed to load external entity "pm.localhost/sysworkflow/en/glpi_classic/services/wsdl2"
    Extait de mon docker-compose:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    php73:
        build: php73
        ports:
          - "9073:80"
        volumes:
          - ./vhosts:/etc/apache2/sites-enabled
          - /home/alex/docker/www:/var/www
        networks:
          mynetwork:
            ipv4_address: 172.20.0.72
        # extra_hosts:
        #   - pm.glpi.localhost: 172.20.40.56
      php56:
        build: php56
        ports:
          - "9056:80"
        volumes:
          - ./vhosts56:/etc/apache2/sites-enabled
          - /home/alex/docker/www:/var/www
        networks:
          mynetwork:
            ipv4_address: 172.20.0.56
    
    networks:
      mynetwork:
        ipam:
          driver: default
          config:
            - subnet: 172.20.0.0/16
    merci d'avance

    PS: Ce n'est pas un problème de code PHP car il fonctionne. Il est utilisé sur des environnements de prod mais pas avec Docker.

  2. #2
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Par défaut
    Il faudrait tenter de :

    • passer par un network dédié de type bridge
    • utiliser des container_name
    • considérer ces container_name comme les noms à utiliser pour la résolution DNS
    Evitez les MP pour les questions techniques... il y a des forums
    Contributions sur DVP : Mes Tutos | Mon Blog

  3. #3
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 278
    Par défaut
    Citation Envoyé par gorgonite Voir le message
    Il faudrait tenter de :

    • passer par un network dédié de type bridge
    • utiliser des container_name
    • considérer ces container_name comme les noms à utiliser pour la résolution DNS
    Bonjour Gorgonite,

    merci pour ton retour.
    D'après ce que j'ai compris docker-compose set les container_name avec le nom de service (php73 ou php56 dans mon cas)?
    La résolution de nom avec ces noms fonctionne car pour la config de base de données, je met juste le nom "db"(nom de mon container MySQL) dans la config de l'app A et c'est ok.

    Par contre pour SOAP ca ne l'est pas ...

  4. #4
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    18 284
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 18 284
    Par défaut
    Mets les infos dans les fichiers /etc/hosts de tes conteneurs respectifs.
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  5. #5
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 278
    Par défaut
    Citation Envoyé par chrtophe Voir le message
    Mets les infos dans les fichiers /etc/hosts de tes conteneurs respectifs.
    Bonjour Chrtophe,

    je vais tester ca , meme si il me semble avoir déja essayé.

    En mode bridge mes containers ne se ping plus. C'est normal ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
      php73:
        build: php73
        ports:
          - "9073:80"
        volumes:
          - ./vhosts:/etc/apache2/sites-enabled
          - /home/alex/docker/www:/var/www
        networks:
          - mynetwork
      php56:
        build: php56
        ports:
          - "9056:80"
        volumes:
          - ./vhosts56:/etc/apache2/sites-enabled
          - /home/alex/docker/www:/var/www
        networks:
          - mynetwork
    
    
    networks:
      mynetwork:
        driver: bridge
    EDIT: J'ai du haluciner, même avec mon network mynetwork le ping ne passe pas.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    networks:
      mynetwork:
        ipam:
          driver: default
          config:
            - subnet: 172.20.0.0/16
    De plus en ajoutant une entrée extra_hosts dans le docker-compose il n'apparait pas dans etc/hosts ... C'est normal ?

  6. #6
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Par défaut
    il y a les déclarations depends_on à gérer
    Evitez les MP pour les questions techniques... il y a des forums
    Contributions sur DVP : Mes Tutos | Mon Blog

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Résolution de nom et apache
    Par KindPlayer dans le forum Apache
    Réponses: 1
    Dernier message: 17/06/2008, 15h00
  2. Problème de résolution de nom de domaine et IP
    Par berceker united dans le forum IIS
    Réponses: 0
    Dernier message: 21/01/2008, 15h41
  3. résolution de nom
    Par coco-sup dans le forum Oracle
    Réponses: 3
    Dernier message: 28/08/2006, 10h07
  4. Résolution de nom HS
    Par argoet dans le forum Développement
    Réponses: 6
    Dernier message: 01/08/2005, 13h53
  5. [résolution de noms] [réseau] problème fichier hosts
    Par Aldo dans le forum Administration
    Réponses: 2
    Dernier message: 11/04/2005, 21h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo