2016-08-09 9 views
1

私は現在Docker Engine 1.11を使用しています。私がDocker 1.12に移動してSwarmを使用できるかどうか調べています。私は現在、50以上のBambooエージェントを実行するためにDockerを使用しています。これらのエージェントはすべて、サーバー上のポートにマップされたポートを持つ必要があります。例えば、各ドッキングウィンドウコンテナは、ポート4000が使用可能に持っている必要がありますので、私はドッカーが実行さないとき、私は私が理解から、私が私のサービスを拡張するには、次のコマンドを実行します、ドッカースウォームでDocker Swarm - ポートとスケーリング

Docker run -p 10000:4000 myimg 
Docker run -p 10001:4000 myimg 
Docker run -p 10002:4000 myimg 
Docker run -p 10003:4000 myimg 

をDO- 50コンテナ

docker service scale helloworld=5 

しかし、これを実行すると、すべて同じポートにマップしようとしています。どうすればこれを達成できますか?出来ますか?

+0

新しいスウォームモード機能を使用せずに、Dockerを1.11で使用しているのと同じ状態で、1.12にアップグレードすることができます。新しいSwarmモードを使用できるサービスがある場合、それらは同じサーバー上で実行できます。 – BMitch

答えて

1

いいえ、できません。

それはサービスが1つのポートで複数のコンテナ(サービスディスカバリ)に

をマッピングすることができますし、別の1コンテナが失敗したときに、群れは新しいものを開始しますであることを提供するドッキングウィンドウただ一つのキーの機能です。(自己治癒)

私はBambooについて何も知らないので、掃除モードで竹サービスを実行する方法があるかどうかはわかりません。

+0

実際には、利用可能なポートが必要なコンテナ内のデータベースです。返信いただきありがとうございます!うまくいけば、この機能が出てくるでしょう。インスタンスごとに1つずつマッピングされたポートをスケールするだけでいいですね。 – PolarisUser