spring-boot - Cassandra / Spring boot 错误:协议初始化请求,第 1 步(选项):发送请求失败(java.nio.channels.NotYetConnectedException))
问题描述
我正在使用 docker compose 将两个容器与下面的 docker-compose.yml 文件连接起来:
version: '3'
services:
cassandra:
image: ubuntu-cassandra-v2
ports:
- "9044:9042"
container_name: cassandra
networks:
- net1
APP:
image: centos7-spring-boot
ports:
- "8086:8080"
container_name: app
links:
- cassandra
networks:
- net1
networks:
net1:
driver: "bridge"
当我运行命令行 :docker-compose up -d
时,在 tomcat 日志中出现了这个错误:
2021-11-07 19:27:48.951 WARN 1 --- [s0-admin-1] cdodiccontrol.ControlConnection: [s0] 连接到节点时出错(endPoint=192.168.176.2:9042,hostId=null,hashCode=63fea1f6) ,尝试下一个节点(ConnectionInitException: [s0|control|connecting...] 协议初始化请求,第 1 步(OPTIONS):发送请求失败(java.nio.channels.NotYetConnectedException))
码头工人检查:
[
{
"Name": "tmp_net1",
"Id": "bba35a62c141c02d09c6a230a5ff643889166d9a09b25163986562b3e24adb71",
"Created": "2021-11-07T17:05:34.786777218-05:00",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": null,
"Config": [
{
"Subnet": "192.168.176.0/20",
"Gateway": "192.168.176.1"
}
]
},
"Internal": false,
"Attachable": true,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {
"0ff6698ce04c265b2972ed6269ce3e403b11b48053866d277e2ec8153c28a7e8": {
"Name": "cassandra",
"EndpointID": "a3d87993deff70923c89d1e656c1a613aac9b3537a80052190fc085407eaa004",
"MacAddress": "02:42:c0:a8:b0:02",
"IPv4Address": "192.168.176.2/20",
"IPv6Address": ""
},
"2a293e9d4442664557dd80226193942deb9ef023c51f0ea0c010191e20a7e379": {
"Name": "app",
"EndpointID": "55ca479d6a62ba6d325b615f8b2191c702fa41766c7f8814ee2dbe4b2d6cbd06",
"MacAddress": "02:42:c0:a8:b0:03",
"IPv4Address": "192.168.176.3/20",
"IPv6Address": ""
}
},
"Options": {},
"Labels": {
"com.docker.compose.network": "net1",
"com.docker.compose.project": "tmp",
"com.docker.compose.version": "1.23.2"
}
}
]
我在application.properties中设置了 Cassandra 的 IP 192.168.176.2:
# CASSANDRA (CassandraProperties)
cassandra.cluster = Test Cluster
cassandra.contactpoints=192.168.176.2
一些建议表示赞赏。
解决方案
推荐阅读
- c++ - 使用 boost 或标准库的 wchar 参数
- microsoft-graph-teams - 用于获取 Teams 详细信息的嵌套 mgt-get 无法使用 Teams Toolkit
- sql - 检查一个表中的值组合是否存在于另一个表中
- uart - UART.init() 和 UART.deinit() 在 Raspberry Pi Pico 上的 MicroPython 1.16 中是否已弃用?两种方法都在文档中,但未被识别
- python - 如何将 pybind11::keep_alive 与返回不同类型对象的函数一起使用
- cypress - 如何将环境名称传递给赛普拉斯测试以加载一组环境变量?
- r - 在flexdashboard中离开submitButton时如何使用actionButton?
- logic - 我将如何着手将其翻译为我的程序的喇叭形式?(逻辑)
- sql - 提取 map(varchar, array(varchar)) - Hive SQL
- javascript - 在 CSS 中相当于 :active 的 JavaScript