2016-07-07 19 views
1

Ich bin neu mit Docker. I heruntergeladenen Bilder und begann Container mit einem BefehlKeine Verbindung zum Docker Container unter Windows

docker-compose up -d 

ich einen Container-Konfigurationsdatei haben:

algotrader: 
    image: algotrader/algotrader 
    command: -i 
    links: 
    - mysql 
    - ibgateway 
    ports: 
    - 9090:9090 
    - 61614:61614 

ibgateway: 
    image: algotrader/ibgateway 
    environment: 
    TWS_USERNAME: edemo 
    TWS_PASSWORD: demouser 
    volumes: 
    - /var/lib/tws 

mysql: 
    image: mysql 
    environment: 
    MYSQL_ROOT_PASSWORD: password 
    MYSQL_DATABASE: algotrader 
    ports: 
    - 3306:3306 
    volumes: 
    - /var/lib/mysql 

Wenn ich laufen Befehl

docker ps 

es zeigt mir die Liste der Anwendungen laufen im Docker-Container:

c:\Program Files\Docker\Docker\resources>docker ps 
CONTAINER ID  IMAGE     COMMAND     CREATED    STATUS    PORTS             NAMES 
1e7fe9da1ad7  algotrader/algotrader "bin/docker-run.sh -i" 28 hours ago  Up About an hour 10.0.75.2:9090->9090/tcp, 10.0.75.2:61614->61614/tcp docker_algotrader_1 
72fe4fd2bfb8  algotrader/ibgateway "/usr/local/ibgateway" 28 hours ago  Up About an hour 4001/tcp            docker_ibgateway_1 
3b739113b4e9  mysql     "docker-entrypoint.sh" 28 hours ago  Up About an hour 10.0.75.2:3306->3306/tcp        docker_mysql_1 
c367f3dca162  algotrader/ibgateway "/usr/local/ibgateway" 28 hours ago  Up 26 minutes  4001/tcp            resources_ibgateway_1 

Aber wenn ich Befehl ausführen IP-Adresse zu erhalten:

docker-machine ls 

Es zeigt mir, leere Liste von Maschinen:

c:\Program Files\Docker\Docker\resources>docker-machine ls 
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS 

Auch ich bin in der Lage zu verbinden, auf dem Container bash:

docker exec -it 1e7fe9da1ad7 bash 

Inside Container Ping zu IP-Adresse 172.17.0.4 funktioniert, aber nicht von Windows:

[email protected]:/usr/local/algotrader# ping 172.17.0.4 
PING 172.17.0.4 (172.17.0.4): 56 data bytes 
64 bytes from 172.17.0.4: icmp_seq=0 ttl=64 time=0.055 ms 

Durch die Dokumentation sollte es möglich sein, eine Verbindung zu Port 9090 herzustellen, aber von Windows ist diese Adresse nicht verfügbar.

Wissen Sie, wie Sie die richtige Adresse bekommen oder prüfen, ob es nach draußen geschlossen ist (Windows)?

Vielen Dank!

Antwort

0

Von Windows müssen Sie die IP-Adresse der VM (docker-machine ip <yourMachine> oder die Hyper-V ein)
Siehe "How do I configure docker compose to expose ports correctly?" als Beispiel bei der Verwendung von VirtualBox.

Dann müssen Sie den 9090 auf Ihren Windows Host portieren, um direkt von Windows auf diesen Port zugreifen zu können.

0

Ich habe gerade Docker Tools unter Windows neu installiert. Und es fing an zu arbeiten.

Verwandte Themen