用外部服务替换Docker容器

时间:2015-01-15 18:31:50

标签: docker dockerfile

我刚刚开始使用Docker,我昨天阅读了大量文档和教程,但是我找不到有关使用链接容器替换外部服务的内容,我甚至不确定哪个要搜索的术语。

假设有一个apache容器和一个mysql容器,其中apache运行时带有mysql的链接,并且可以访问其端口等。现在,我们不是在容器实例上运行MySQL,而是将其移至AWS RDS。如何修改mysql容器以使apache继续按预期运行?为了澄清,apache仍将使用带有别名mysql的容器的链接运行,但mysql容器将负责获取发送到AWS的该端口上的流量。

或者,也许有一个运行MySQL服务的容器,但该容器在另一台主机上。我有一种模糊的感觉,我所指的模式也能够处理这种情况。这听起来对任何人来说都很熟悉吗?

1 个答案:

答案 0 :(得分:1)

如果容器在另一台主机上,为什么不直接点击主机并让docker在3386(或你正在运行mysql的任何端口)向容器转发请求时是透明的?我无法想到你想要链接容器的任何理由,除非他们实际上在同一台主机上。 Docker很擅长透明,所以客户端可以从另一台机器上运行Docker中的服务,就像服务直接在没有Docker的机器上运行一样。

如果你真的必须在同一台机器上安装两个容器(即使mysql容器正在调用RDS或其他主机),你应该能够创建一个新的简单mysql映像,只安装了mysql_client并且只需要请求并将它们转发给RDS。