2016-06-29 12 views
0

Ich benutze Docker für Mac. Ich habe zwei Behälter.Docker für Mac Host-Netzwerk

1st: Eine PHP-Anwendung, die versucht, eine Verbindung zu localhost: 3306 zu MySQL herzustellen.

2.: MySQL

Wenn mit Links laufen, sie sind in der Lage, sie zu erreichen.

Allerdings möchte ich vermeiden, ändern Sie den Code in der PHP-Anwendung (z. B. Ändern von localhost zu "mysql") und bleiben bei der Verwendung von localhost.

Host Netzwerk scheint den Trick zu tun, das Problem ist, wenn ich Host-Netzwerk aktivieren ich kann nicht auf die PHP-Anwendung auf Port 80 auf meinem Host-Mac zugreifen.

Wenn ich exec-dot-it in der php-Anwendung und curl localhost docker, sehe ich den HTML, so sieht es aus wie der Port ist nur nicht an den Host-Rechner weiterleiten?

+0

könnten Sie Ihren Docker-Befehl posten? benutze docker run -p localport: docker-port um die ports weiterzuleiten - schau dir https://docs.docker.com/engine/reference/run/#expose-incoming-ports an – lumos0815

+0

@ lumos0815 ich benutze docker komponieren , aber für Ihr Beispiel versuchen Sie, das Host-Netzwerk zu aktivieren und zu sehen, ob Sie von Ihrem Host auf diesen Port zugreifen können. – K2xL

Antwort

0

dies ist ein Beispiel für Docker-komponieren läuft es mysql in einem Behälter und phpMyAdmin in einem anderen die Behälter miteinander verbunden sind Sie die Behälter über Ihre Host-Rechner an den Ports zugreifen können 3316 und 8889

my_mysql: 
    image: mysql/mysql-server:latest 
    container_name: my_mysql 
    environment: 
    - MYSQL_ROOT_PASSWORD=1234 
    - MYSQL_DATABASE=test 
    - MYSQL_USER=test 
    - MYSQL_PASSWORD=test 
    ports: 
    - 3316:3306 
    restart: always 

phpmyadmin: 
    image: phpmyadmin/phpmyadmin 
    container_name: my_myadmin 
    links: 
    - my_mysql:my_mysql 
    environment: 
    - PMA_ARBITRARY=0 
    - PMA_HOST=my_mysql 
    ports: 
    - 8889:80 
    restart: always 
+0

In diesem Beispiel wird Bridge-Netzwerk verwendet. Mein Problem ist, wenn das Host-Netzwerk aktiviert ist. Kannst du das versuchen? – K2xL