se connecter à la base mysql à partir de conteneurs docker

J'ai ce docker fichier et il fonctionne comme prévu. J'ai une application php qui se connecte à mysql sur localhost.

# cat Dockerfile
FROM tutum/lamp:latest
RUN rm -fr /app
ADD crm_220 /app/
ADD crmbox.sql /
ADD mysql-setup.sh /mysql-setup.sh
EXPOSE 80 3306
CMD ["/run.sh"]

Quand j'ai essayé d'exécuter la base de données en tant que récipient séparé, mon application php pointe toujours vers localhost. Lorsque je connecte le "web" conteneur, je ne suis pas en mesure de se connecter à "mysql1" conteneur.

# cat docker-compose.yml
web:
  build: .
  restart: always
  volumes:
    - .:/app/
  ports:
    - "8000:8000"
    - "80:80"
  links:
    - mysql1:mysql

mysql1:
  image: mysql:latest
  volumes:
    - "/var/lib/mysql:/var/lib/mysql"
  ports:
    - "3306:3306"
  environment:
    MYSQL_ROOT_PASSWORD: secretpass

Comment est-ce que mon application php de se connecter à mysql à partir d'un autre conteneur?

Ceci est similaire à la question posée ici...

Se connecter à mysql dans un conteneur docker à partir de l'hôte

Je ne veux pas se connecter à mysql à partir de la machine hôte, j'ai besoin de vous connecter à partir d'un autre récipient.

Comment est-ce que votre connexion mysql configuration? Si l'hôte points de localhost, c'est faux, il doit être mysql.

OriginalL'auteur shantanuo | 2016-05-21