2017-11-03 3 views
0

ドッカーへの旅を始めたばかりで、ドッカーをクラウドの本番インスタンスにデプロイする方法のイメージをまとめようとしています。私たちは現在、すべてのアプリケーションの展開に対応しています。しかし、ドッカーコンテナの展開に関する情報を探すときは、swarmとkubernetesへの参照、またはssh経由の手動展開のように見えます。Dockerデプロイメントのベストプラクティス

私の質問は、ドッカーをクラウドのホストにどのように配備するのですか?能力を使う理由はありますか? (彼らはプラグインを持っています)それはおそらく群れかkubernetesがちょうど私たちのためにそれを世話するかもしれないようです。

答えて

1

私は4年前にコンテナベースのプラットフォームで作業していましたが、その時点ではオーケストレーションフレームワークは存在しないため、コンテナを展開するためにAnsibleを使用しました。今日で

は、私は、オーケストレーションフレームワークなどイングレス負荷分散、ライフサイクル管理、永続的なボリューム管理などの機能を提供します(Kubernetes、ドッカースウォーム、Openshiftなど)を使用することをお勧めします

には多くの方法があります。パブリッククラウドでコンテナを実行したり、Kubernetesのようなオーケストレーションフレームワークを実装したり、独自のフレームワークを実装しているもの(azure acs/aks、AWS ECS、Google Container Engineなど)もあります。興味深いのは、基盤となるVMが魅力的であるか、管理されているということです。

あり、それを行うには、多くの多くの方法があるが、ちょうどAnsibleを使用しては、あなたが提供しなければならないし、管理します既存のVM上のコンテナをスピンアップに制限されます。

0

この質問に対する回答は、アプリケーションの配備要件がどのようなものかによって異なります。

ケース1)アプリケーションのデプロイメントは簡単です。ドッキング用のコンテナを展開するだけで済みます。

解決策1)実際に配置管理を行う管理ツールは必要ありません。この場合、hereのようにジェンキンスジョブを設定することができます。あなたが使用する必要があります

ケース2)アプリケーションの配備は、いくつかのlogrotateなどのセットアップ、多分あなたはセットアップにいくつかの監視エージェントを必要とし、コンフィギュレーションの数が同様にドッキングウィンドウのホストインスタンスで実行する必要が

ソリューション2)あなたのホスト環境をセットアップし、それを使用してドッカーのコンテナを展開することができます。ここではドッカーコンテナのデプロイメントは通常のdocker runのようにすることができます。また、複数のアプリケーションをデプロイしていて、ドッカーホストインスタンスを効率的にメモリまたはCPUとして使用したい場合は、ドッカーの推奨方法を使用できます。もちろん、あなたがあなたに適しているかどうかを確認することができますswarmを使用して複数の他の利点があります。

ケース3)アプリケーションの配備、いくつかのカーネル・レベルのパラメータを変更する必要が多分それは、ulimitのパラメータにいくつかの変更を必要とするなど

ソリューション、それが設定オプションをカーネルに来るとき3)ドッカーの群れがいくつかの制限があります。あなたはディスカッションhereに参加できます。この場合、docker swarmの設定にサポートが追加されるまで、従来のドッカーの展開方法(docker run)に進む必要があります。

関連する問題