【问题标题】:Share IP between containers using docker-compose使用 docker-compose 在容器之间共享 IP
【发布时间】:2019-02-07 23:42:13
【问题描述】:

我使用 docker-compose 来链接容器。结构如下:

version: '3.3'
services:
  db_service:
    ...
  api_service:
    ...
  ...

我知道 Nginx 可以使用以下代码访问其他容器的 IP:

location /api/ {
    proxy_pass      http://api_service:5000;
}

我想扩展这个question,如果有一个具体的例子会受到赞赏。

在我的情况下,我想连接到位于另一个容器中的数据库。数据库的 IP 由:$ docker inspect my_db | grep "IPAddress" 给出,并且在不同的运行时它不是恒定的。下面的代码目前可以工作,但我正在寻找更强大的东西,它可以抵抗简单的重启,并且可以在周期的每个阶段(开发、测试、部署)理想地重复使用。

conn = psycopg2.connect("dbname=postgres user=postgres password=postgres host=172.25.0.2")

【问题讨论】:

    标签: docker docker-compose


    【解决方案1】:

    您可以按照您所说的通过服务名称访问它。只要记住添加链接部分和depends_on。然后您将在 hosts 文件中解析 db_service。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-08-12
      • 1970-01-01
      • 1970-01-01
      • 2017-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多