Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux Docker编排_Linux_Docker - Fatal编程技术网

Linux Docker编排

Linux Docker编排,linux,docker,Linux,Docker,我知道这是一个有点长的问题,但任何帮助将不胜感激 简短的版本就是,我希望有一组容器在多个主机上相互通信,并且可以通过SSH访问。 我知道有很多工具,但我没能做到 长版本是: 有一种软件具有多个组件,这些组件可以安装在任意数量的机器上。该软件有一个客户端和一个服务器端。 客户端-服务器和服务器端组件都通过UDP端口进行通信。 服务器使用CentOS,客户端使用Microsoft Windows 我想创建一个由4个容器组成的测试环境,这些组件将分布在这些容器和客户端机器上。 docker主机是Ubu

我知道这是一个有点长的问题,但任何帮助将不胜感激

简短的版本就是,我希望有一组容器在多个主机上相互通信,并且可以通过SSH访问。 我知道有很多工具,但我没能做到

长版本是:

有一种软件具有多个组件,这些组件可以安装在任意数量的机器上。该软件有一个客户端和一个服务器端。 客户端-服务器和服务器端组件都通过UDP端口进行通信。 服务器使用CentOS,客户端使用Microsoft Windows

我想创建一个由4个容器组成的测试环境,这些组件将分布在这些容器和客户端机器上。 docker主机是Ubuntu,容器是CentOS。 如果我将所有组件安装在一个容器中,它就可以正常工作,如果有多个组件的话。根据日志,它在工作,但不是

我读到你需要链接容器或者使用像Maestro这样的编曲来完成这项工作,但我到目前为止还没能做到

我想要的是能够在一台或多台主机上启动相互通信的set if容器。我希望能够使用ssh访问这些容器,以便服务能够自动启动

另外,对容器使用DDN也很好,因为名称会被反复使用,但IP地址可能会改变,但这只是上面的樱桃

一些规格:

主机是Ubuntu 12.04.4 LTS x86_64的新安装 Docker是最新版本。(lxc docker 0.10.0)我使用了本机驱动程序。 容器是从docker索引中提取的简单centos。我在容器上安装了一些基本的东西:openssh服务器、mc、javajre。 我将docker网络更改为可以从内部网络访问的网络。 IP表规则被清除了,因为我不需要它们,但也尝试了使用它们,但没有运气。
/etc/default/docker
文件更改:

    DOCKER_OPTS="--iptables=false"
或使用暴露的API:

    DOCKER_OPTS="-H tcp://0.0.0.0:4243 --iptables=false"
    docker -H :4243 run -h <hostname> -i -t  --privileged --expose 1-65535/udp <image> /bin/bash
软件使用的端口在6000-9000之间,但我尝试打开所有端口。 run命令的一个示例:

    docker run -h <hostname> -i -t  --privileged --expose 1-65535/udp <image> /bin/bash
docker-run-h-i-t--privileged--expose 1-65535/udp/bin/bash
我还尝试了公开API:

    DOCKER_OPTS="-H tcp://0.0.0.0:4243 --iptables=false"
    docker -H :4243 run -h <hostname> -i -t  --privileged --expose 1-65535/udp <image> /bin/bash
docker-H:4243 run-H-i-t--privileged--expose 1-65535/udp/bin/bash

我不会放弃,但我希望能得到一些帮助。

您可以简单地使用编排并将容器链接在一起,而不用做所有DDN和端口转发之类的工作。fig.yml语法非常直截了当。

您可能想看看正在开发的项目。它将允许您将测试机器集视为一个集群,您可以将容器部署到该集群。

您可以使用weave作为网络部分。您可以使用这些教程


的可能重复不会称之为重复,但我的问题也可能有答案。无论如何,谢谢:)查看工具,如:最近由