【问题标题】:Run multiple docker-compose (one per machine)运行多个 docker-compose(每台机器一个)
【发布时间】:2016-02-02 09:48:58
【问题描述】:

我正在测试很多微服务。 我将其中一些分组到一个 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 的目标机器?

【问题讨论】:

    标签: docker docker-compose docker-machine


    【解决方案1】:

    确保在要运行第二个 docker-compose 的 shell 中,您首先完成了 docker-machine env:

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

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

    【讨论】:

    • 谢谢!此外,在docker-machine env &lt;machine name&gt; 之后,我不得不运行eval "$(docker-machine env &lt;machine name&gt;)"
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-08
    • 2018-05-30
    相关资源
    最近更新 更多