Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.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
在windows 10上的docker中使用多个节点运行couchbase群集_Docker_Couchbase - Fatal编程技术网

在windows 10上的docker中使用多个节点运行couchbase群集

在windows 10上的docker中使用多个节点运行couchbase群集,docker,couchbase,Docker,Couchbase,我在windows10上创建了一个带有单个节点的couchbase 4.0docker容器。并在主机环回中增加了节点ip,在vitural box中增加了转发端口,使在主机上运行的我的应用中的couchbase客户端可以连接到集群中的节点。当集群中只有一个节点时,我能够连接并执行db操作 然而,当我在Windows10上的docker中创建多节点集群时。我无法进行数据库操作。在主机上运行的golang应用程序中,我收到消息“get and set”操作尝试6次后无法完成操作 如何在windows

我在
windows10
上创建了一个带有单个节点的
couchbase 4.0
docker容器。并在主机环回中增加了节点ip,在vitural box中增加了转发端口,使在主机上运行的我的应用中的couchbase客户端可以连接到集群中的节点。当集群中只有一个节点时,我能够连接并执行db操作

然而,当我在Windows10上的docker中创建多节点集群时。我无法进行数据库操作。在主机上运行的golang应用程序中,我收到消息“get and set”操作尝试6次后无法完成操作


如何在windows计算机的同一台主机上运行docker中多个节点的couchbase群集,以便我可以连接群集并从主机上运行的应用程序执行db操作。

如果您的应用程序没有在docker主机内运行,据我所知,您不能这样做(我希望docker专家证明我是错的)

Couchbase客户端需要访问集群中的每个节点,使用Docker,您只能将一个映像转发到主机外部的给定端口。(仅供参考,有一个名为sdk doctor的工具,可用于验证连接/网络问题,称为)

我建议在Docker主机内运行golang应用程序(通常使用Docker compose)


另外,我强烈建议升级到Couchbase的最新版本。

使用Couchbase 6.5及更高版本,您可以使用该命令将docker中运行的节点配置为播发映射端口,而不是标准端口。这是最新的Couchbase Testcontainers模块使用的技术。手动操作可能很痛苦。。。您需要启动docker容器并将couchbase使用的所有端口映射到主机上的唯一端口。。。然后在每个docker容器中运行设置备用地址命令。