运行多个docker-compose(每台机器一个)

时间:2016-02-02 09:48:59

标签: docker docker-compose docker-machine

我正在测试很多微服务。 我将其中一些分组在docker-compose文件中,如:

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

elastic:
  image: elasticsearch
  expose:
    - 9200
    - 9300

然后我按$docker-compose up

开始第一个

在另一个目录中,我将通过$docker-compose up启动另一个“微服务”。但我明白了:

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

如何为docker-compose.yml指定docker机器?

$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

只有default机器可以运行“微服务”。

如何指定docker-compose.yml的目标计算机?

1 个答案:

答案 0 :(得分:4)

确保在shell中你要运行第二个docker-compose,你先做了docker-machine env

var schema = new mongoose.Schema({
    field: { type: String, required: function ()
    {
        return this.field === undefined;
    }}
});

这将为docker命令配置right environment variables以联系正确的机器(右侧docker守护程序)。