我对于Docker玩起来相当新颖,所以希望这都是我的错,但我正在尝试使用Docker Compose获得多主机Apache Cassandra戒指设置。Multi host cassandra Docker-compose文件问题
我有以下搬运工-compose.yml文件
version: '2'
services:
cassandra-1:
hostname: cassandra-1
image: cassandra:latest
command: /bin/bash -c "sleep 1 && echo ' -- Pausing to let system catch up ... -->' && /docker-entrypoint.sh cassandra -f"
expose:
- 7000
- 7001
- 7199
- 9042
- 9160
# volumes: # uncomment if you desire mounts, also uncomment cluster.sh
# - ./data/cassandra-1:/var/lib/cassandra:rw
cassandra-2:
hostname: cassandra-2
image: cassandra:latest
command: /bin/bash -c "sleep 20 && echo ' -- Pausing to let system catch up ... -->' && /docker-entrypoint.sh cassandra -f"
environment:
- CASSANDRA_SEEDS=cassandra-1
links:
- cassandra-1:cassandra-1
expose:
- 7000
- 7001
- 7199
- 9042
- 9160
# volumes: # uncomment if you desire mounts, also uncomment cluster.sh
# - ./data/cassandra-2:/var/lib/cassandra:rw
本示例试图在另一容器中,开始第一卡桑德拉节点(卡桑德拉-1),然后一个第二节点(卡桑德拉-2)这应该是能够使用1节点作为标准卡桑德拉环境变量种子节点“CASSANDRA_SEEDS”
然而,当我运行它,我得到这种异常
cassandra-2_1 | WARN 07:00:35 Seed provider couldn't lookup host cassandra-1
cassandra-2_1 | Exception (org.apache.cassandra.exceptions.ConfigurationException) encountered during startup: The
provider lists no seeds.
cassandra-2_1 | The seed provider lists no seeds.
cassandra-2_1 | ERROR 07:00:35 Exception encountered during startup: The seed provider lists no seeds.
cass2_cassandra-2_1 exited with code 3
从哪里开始第二卡桑德拉节点(卡桑德拉-2)的尝试总是失败,同时也结束了在第一
cass1_cassandra-1_1 exited with code 137
杀死如果我的泊坞窗,compose.yaml文件分割成两个部分,第一个cassandra节点的起始位置在一个文件中。并且只需使用码头工具启动该节点即可构成即可。
也请注意,当我拿2个独立泊坞窗,compose.yml文件路径,一为“卡桑德拉-1”,另一个是“卡桑德拉-2”我AM确保2号文件使用“external_links”而不是“链接”。但结果是一样的
任何人都有更多的码头经验告诉我,我哪里出错了。
我已经在网上搜索了其他的例子,每个人似乎都和我一样。但我的行不通。
感觉完全迷失了方向,请大家帮忙
可悲的是它没有任何区别。同样的错误。我在Windows上运行Docker,我将这个文件交给了docker的Linux用户,他们说这只是工作。 GRRRR – sacha