繁体   English   中英

如何在Docker上运行的Thingboard中连接cassandra

[英]how to connect cassandra in thingboard running on Docker

我正在使用东西板(在docker上),但我还希望能够连接到东西板docker上的cassandra。 我想要的是检查表结构和数据本身。

从在docker run上安装whatboard参考中 ,没有任何-p 9042:9042配置。

因此,我已将其添加到docker run命令中(例如docker run -p 9090:9090 -p 1883:1883 -p 9042:9042 -p 5683:5683 / udp -v /thingsboard/.mytb-data:/data。 ....)。 但是,我无法将9042上的telnet事件发送到我的主主机。

然后,我在thingboard docker(/ etc / cassandra)中检查了cassandra配置文件。 我发现rpc_address的值是localhost,没有broadcast_rpc_address的任何行。 我不确定应该输入什么配置文件,因为它是一个docker容器。

这是我的端口设置(我在下面添加了屏幕截图):

0.0.0.0:1883->1883/tcp, 0.0.0.0:9042->9042/tcp, 0.0.0.0:9090->9090/tcp, 0.0.0.0:5683->5683/udp

CONTAINER ID -> ac2b6e2316a7 
IMAGE      -> thingsboard/tb-cassandra     
COMMAND    -> "start-tb.sh"    
PORTS      -> 0.0.0.0:1883->1883/tcp, 0.0.0.0:9042->9042/tcp, 0.0.0.0:9090->9090/tcp, 0.0.0.0:5683->5683/udp  

码头上的端口运行

谢谢

根据Thingsboard / tb-cassandraDockerfile ,Cassandra在默认配置上运行,并在localhost上侦听。 这就是为什么它不接受来自Docker主机的任何连接的原因。

为了通过cqlsh连接到Cassandra,您需要使用以下命令登录到容器:

docker exec -it <container_id> /bin/bash

那么您可以通过发出cqlsh命令连接到Cassandra。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM