【问题标题】:connect with service running on host from docker container从 docker 容器连接主机上运行的服务
【发布时间】:2021-05-25 07:23:57
【问题描述】:

我已经完成了 ssh 端口转发,它在我的本地监听 2000。所以服务在 localhost:2000 上运行,它是 Neo4J 服务器。在我的本地,我可以通过提供bolt://localhost:2000 使用 Neo4J 桌面连接 Neo4J,并可以查看数据。

但我无法连接到 docker 容器中的主机 bolt://localhost:2000。

我在这里看了答案

From inside of a Docker container, how do I connect to the localhost of the machine?

我在 docker-compose.yml 中添加了额外的主机

flask_service:
    build:
      context: ./project
      dockerfile: my_dockerfile
    container_name: flask_container
    stdin_open: true
    tty: true
    ports:
      - 5000:5000
    extra_hosts:
      - "myhost:175.1.344.136"

175.1.344.136 是我的主机 IP 我在容器内同时使用了bolt://175.1.344.136:2000bolt://myhost:2000,但它没有连接。我也想知道bolt://175.1.344.136:2000bolt://myhost:2000哪个是正确的方式

我收到一个错误

2021-05-25T10:53:55+0000.060 [INFO] neo4j_proxy.__init__:74 (8:Thread-11) - NEO4J endpoint: bolt://myhost:2000
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/neobolt/direct.py", line 831, in _connect
    s.connect(resolved_address)
ConnectionRefusedError: [Errno 111] Connection refused

我正在使用 MacOs,请帮我解决这个问题。

提前致谢!

【问题讨论】:

  • 您好,您可以提供整个 docker-compose.yml 文件吗?
  • @utnaf 我已经更新了描述
  • 我会尝试在 extra_hosts 中使用 myhost:127.0.0.1 并使用 bolt://myhost:2000。不太确定,我需要时间试一试
  • @utnaf 尝试这样做。还是有同样的问题
  • 错误是什么?

标签: python docker docker-compose neo4j


【解决方案1】:

您需要使用容器服务名称 neo4j 和默认端口 7687 才能在同一个 docker 主机内使用。

bolt://neo4j:7687

version: "3.8"
services:
    neo4j:
        image: neo4j:3.4.4-enterprise
        ports:
            - 7474:7474
            - 7687:7687
    my_service:
        build:
          context: .
        environment:
          DATABASE_URL: "bolt://neo4j:7687"

【讨论】:

  • 我想使用 neo4j,它在我的主机上的 2000 端口运行。不是容器。您建议的解决方案是为 neo4J 创建新容器,这不是我的问题的解决方案。如果我错过了阅读它。请纠正我
  • 使用 bolt://{IP}:{NEO4J_PORT} - bolt://175.1.344.136:2000 为 docker 容器 vrtify 内部网络。
猜你喜欢
  • 1970-01-01
  • 2020-11-26
  • 2015-01-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-29
  • 2020-09-28
相关资源
最近更新 更多