为什么我的多个Neo4j图像容器与Docker共享数据?

时间:2016-12-31 12:17:40

标签: ubuntu docker neo4j

我正在尝试设置Docker和Neo4j。我想在3个不同的端口上创建3个单独的数据库。

获取图片: sudo docker pull neo4j

然后我创建了3个像这样的容器:

sudo docker run -d --publish=7474:7474 --publish=7687:7687 --volume=$HOME/db-neo-test-01/data:/data --volume=$HOME/db-neo-test-01/logs:/logs neo4j:latest

sudo docker run -d --publish=7475:7474 --publish=7688:7687 --volume=$HOME/db-neo-test-02/data:/data --volume=$HOME/db-neo-test-02/logs:/logs neo4j:latest

sudo docker run -d --publish=7476:7474 --publish=7689:7687 --volume=$HOME/db-neo-test-03/data:/data --volume=$HOME/db-neo-test-03/logs:/logs neo4j:latest

然后我连接到<ipaddress>:7474以设置初始密码。

现在当我连接到另一个端口7475时,我突然设置了密码,如果我在这里添加一个节点,我可以在所有其他容器中检索此节点。

如何设置它以便隔离数据,我可以为每个数据库实例使用不同的密码?

1 个答案:

答案 0 :(得分:5)

  

我连接到<ipaddress>:7474以设置初始密码。现在,当我连接到另一个端口7475时,我突然设置了密码,如果我在这里添加一个节点,我可以在所有其他容器中检索此节点。

您看到此行为是因为Neo4j Browser默认情况下会连接到bolt://<ipaddress>:7687

即使你在<ipaddress>:7475访问Neo4j浏览器,它也会连接到bolt://<ipaddress>:7687,你仍然可以看到第一个容器中的数据。

  

如何设置它以便隔离数据,我可以为每个数据库实例使用不同的密码?

  • 在网络浏览器中导航至<ipaddress>:7475
  • 点击侧栏中的齿轮图标,打开“浏览器设置”面板。
  • 在“网络连接”部分下的“URI”字段中输入bolt://<ipaddress>:7688
  • 重新加载页面并验证您现在可以设置不同的密码,并且您不再看到第一个容器中的数据。