起動しません。ドッキングウィンドウに、これは私がこれまで試したものです:ドッキングウィンドウ-COMPOSEは、私は2枚の画像 を起動するためにドッカ - コンを使用しようとしている
をここに私のドッキングウィンドウ-compose.yml
version: '2'
services:
cassandra-srv:
image: cassandra:latest
ports:
- "7000:7000"
- "7001:7001"
- "9042:9042"
- "7199:7199"
- "9160:9160"
container_name: cassandra-srv
cqlsh:
build: cassandra-build
image: cassandra:mycqlsh
links:
- cassandra-srv
container_name: cassandra-client
depends_on:
- cassandra-srv
entrypoint: /usr/local/bin/wait-for-it.sh cassandra-srv:9042 && cqlsh
だここでの考え方は、私は2つのサービスが定義されていることです。ローカルマシンと他のドッカーイメージの両方に、必要以上のポートを開いています。サーバーが起動し、起動時にクライアントが小さなユーティリティスクリプトを使用してサーバーが完全に起動するのを待ってから、対話シェルにジャンプします。基本カサンドラの画像がこのDockerfileを経由して微調整されていることを行うために:
FROM cassandra
MAINTAINER [email protected]
ENV container docker
WORKDIR /tmp
ADD https://raw.githubusercontent.com/vishnubob/wait-for-it/master/wait-for-it.sh /usr/local/bin
RUN chmod +x /usr/local/bin/wait-for-it.sh
しかし、私は *直接のコマンドを実行して、うまく *を起動し、同じ画像が、まっすぐcqlshにそのカサンドラ・イメージを起動することができながら、ドッカーの呼び出し *洗練されたドッカー画像を作成する
私はできないのは、単にクライアントイメージを構築し、サーバを起動し、待ってからシェルにジャンプすると予想していた "docker-compose run cqlsh"を実行することです。
ドッカーの知識の欠如が原因だと思いますが、誰もこの初心者のためにいくつかのヒントを提供していますか? ;-)
ありがとう ナイジェル。
なぜ、別のコンテナでcqlshを実行するのですか? –