Cassandra 启动userland代理时出错:侦听tcp 0.0.0.0:9042:bind:address已在使用中';

Cassandra 启动userland代理时出错:侦听tcp 0.0.0.0:9042:bind:address已在使用中';,cassandra,apache-kafka,docker-compose,pipeline,Cassandra,Apache Kafka,Docker Compose,Pipeline,我正在尝试为kafka connector和cassandra cluster的3实例设置landoop/fast data dev cluster,但收到“启动userland proxy时出错:侦听tcp 0.0.0.0:9042:绑定:地址已在使用中” 使用sudo netstat-pna | grep 9042 我得到: tcp 0 0 127.0.0.1:9042 0.0.0.0:*收听1166/java 我试过了 pkill-f cassandrademon和 docker rm-f

我正在尝试为kafka connector和cassandra cluster的3实例设置landoop/fast data dev cluster,但收到“启动userland proxy时出错:侦听tcp 0.0.0.0:9042:绑定:地址已在使用中”

使用
sudo netstat-pna | grep 9042
我得到:
tcp 0 0 127.0.0.1:9042 0.0.0.0:*收听1166/java

我试过了
pkill-f cassandrademon
docker rm-f$(docker ps-aq)
没有成功。 以下是docker compose文件:

version: '2'

services:

        kafka-cluseter:
                image: landoop/fast-data-dev:latest
                environment:
                        ADV_HOST: 127.0.0.1
                        RUNTESTS: 0
                ports:
                        - 2181:2181
                        - 3030:3030
                        - 8081-8083:8081-8083
                        - 9581-9585:9581-9585
                        - 9092:9092
        ###############################
        cassandra0:
                image: cassandra:latest
                container_name: cassandra0
                ports:
                        - 9042:9042
                        - 7199:7199

        ###############################
        cassandra1:
                image: cassandra:latest
                container_name: cassandra1
                ports:
                        - 9142:9042
                links:
                        - cassandra0:seed
                environment:
                        - CASSANDRA_SEEDS=seed

        ###############################
        cassandra2:
                image: cassandra:latest
                container_name: cassandra2
                ports:
                        - 9242:9042
                links:
                        - cassandra0:seed
                environment:
                        - CASSANDRA_SEEDS=seed
Cassandra实例在
sudo docker compose up-d

Creating network "kafka-code_default" with the default driver
Creating cassandra0                  ... error
Creating kafka-code_kafka-cluseter_1 ... 

ERROR: for cassandra0  Cannot start service cassandra0: b'driver failed programming external connectivity on endpoint cassandra0 (e5383709e9e9b45bbdf57a6445da0df4e4aa228269ad1d18c4c3de70bc903b0a): Error starting userland proxy: listen tcp 0Creating kafka-code_kafka-cluseter_1 ... done

ERROR: for cassandra0  Cannot start service cassandra0: b'driver failed programming external connectivity on endpoint cassandra0 (e5383709e9e9b45bbdf57a6445da0df4e4aa228269ad1d18c4c3de70bc903b0a): Error starting userland proxy: listen tcp 0.0.0.0:9042: bind: address already in use'

您已经在端口9042上运行了其他内容,如您所示:

sudo netstat -pna | grep 9042

tcp        0      0 127.0.0.1:9042          0.0.0.0:*               LISTEN      1166/java
这就是为什么您不能启动Docker容器,它也希望使用相同的端口

问题是,你假设那个港口一定是Docker或Cassandra,并试图杀死他们

pkill -f CassandraDaemon
docker rm -f $(docker ps -aq)
实际上,您需要做的是找出什么进程
1166
,并终止它——或者,如果它应该运行,为Docker容器选择一个不同的端口来使用

ps -ef|grep 1166

运行
sudo定影器-n tcp-k 9042