Docker 问题是我无法从python应用程序连接到scylla节点。我需要改变锡拉·亚马尔的属性吗?

Docker 问题是我无法从python应用程序连接到scylla节点。我需要改变锡拉·亚马尔的属性吗?,docker,scylla,Docker,Scylla,我刚刚开始探索锡拉卜在我们的应用程序中的应用。我可以在我当地的码头工人那里旋转锡拉。问题是我无法从我的python应用程序连接到其中任何一个。我需要改变锡拉·亚马尔的属性吗 $ docker exec -it scylla1 nodetool status Datacenter: datacenter1 ======================= Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Loa

我刚刚开始探索锡拉卜在我们的应用程序中的应用。我可以在我当地的码头工人那里旋转锡拉。问题是我无法从我的python应用程序连接到其中任何一个。我需要改变锡拉·亚马尔的属性吗

$ docker exec -it scylla1 nodetool status
Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address     Load       Tokens       Owns    Host ID                               Rack
UN  172.17.0.3  148.85 KB  256          ?       a93f8715-ff4c-43f4-8ee3-f28f936aa842  rack1
UN  172.17.0.2  158.58 KB  256          ?       c34446ca-4b11-48a6-b329-db73fd22e059  rack1
UN  172.17.0.4  146.81 KB  256          ?       4b13b043-3422-4589-b829-c26a48e7fb6e  rack1
Python应用程序:

class App:
    def __init__(self):
        self.cluster = Cluster(contact_points=["scylla1", "scylla2", "scylla3"])
        # self.cluster = Cluster(contact_points=["172.17.0.2", "172.17.0.3", "172.17.0.4"])
        self.session = self.cluster.connect(keyspace="catalog")
        self.session.default_consistency_level = ConsistencyLevel.QUORUM



if __name__ == "__main__":
    app = App()

这可能是因为您运行的容器没有端口映射。添加-p9042:9042,您将能够访问它。始终使用telnet或cqlsh检查是否存在类似Docker的网络问题。尝试使用IP,而不是docker实例名称。是一个很好的入门资源,包括设置一个运行“锡拉”的本地Docker。有关Docker和性能的更多高级主题,请访问