私はDockerを使いこなすのが新しいので、これは私のせいだが、Docker Composeを使ってマルチホストApache Cassandraリングの設定をしようとしている。マルチホストのcassandra Dockerのファイルの作成
私はドッカー-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のCassandraノード(カサンドラ-1)及び第2ノード(カサンドラ-2)を開始しようと
それはしかし、
を「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)を起動しようとする試みは常に失敗し、私は2つの部分に
ドッキングウィンドウ-compose.yamlファイルを分割する場合は第一
cass1_cassandra-1_1 exited with code 137
に殺すまでも終了
1番目のcassandraノードの開始点は1つのファイル内にあります。 ドッカーを使用してそのノードを開始してください。がOKです。
も、私は「カサンドラ-2」の2つの別々のドッキングウィンドウ-compose.ymlファイルのルート、「カサンドラ-1」のための1つ、および別のを取るとき、私AMは必ず第二のファイルということ作ることに注意してください"リンク"ではなく "external_links"を使用します。しかし結果は同じです
もう少しドッカーの経験がある方は、どこに間違っているのか教えてください。
私は他の例のためにウェブを磨き、誰もが私と同じようにやっているようです。しかし、私だけでは機能しません。かなり失われた感じ
は、
悲しいことに、それは何の違いもありませんでした。同じエラー。私はWindows上でDockerを実行しています。私はこのファイルをdockerのLinuxユーザーに渡しました。 GRRRR – sacha