2016-02-02 4 views
5

Ich teste viele Micro-Dienste. I Gruppe einige von ihnen in einer Docker-compose Datei wie:Mehrere Docker-Compose ausführen (eine pro Maschine)

agent: 
    image: php:fpm 
    volumes: 
    - ./GIT:/reposcm:ro 
    expose: 
    - 9000 
    links: 
    - elastic 

elastic: 
    image: elasticsearch 
    expose: 
    - 9200 
    - 9300 

Dann beginne ich die ersten von $docker-compose up

In einem anderen Verzeichnis würde ich einen anderen "Mikro-Service" von $docker-compose up starten. Aber ich bekomme:

ERROR: Couldn't connect to Docker daemon - you might need to run `docker-machine start default`. 

Wie kann ich die Docker Maschine für einen Docker-compose.yml angeben?

$docker-machine ls 
NAME  ACTIVE DRIVER  STATE  URL       SWARM 
default -  virtualbox Running tcp://192.168.99.101:2376 
my_test -  virtualbox Running tcp://192.168.99.102:2376 

Nur die default Maschine kann ein "Mikro-Service" laufen.

Wie kann ich eine Zielmaschine von docker-compose.yml angeben?

Antwort

4

Stellen Sie sicher, dass in der Schale Sie Ihre zweite Docker-komponieren bis ausführen möchten, haben Sie zunächst ein docker-machine env getan:

docker-machine env <machine name> 
eval "$(docker-machine env <machine name>) 

dass die right environment variables konfigurieren für Docker die richtige Maschine kontaktieren Befehle (der richtige Docker-Daemon).

+0

Thx! Darüber hinaus, nach 'docker-machine env ', musste ich 'eval" $ (docker-machine env ) "' ausführen –