2016-05-30 3 views
7

私は、アプリケーションをコンテナにモジュール化する考えが好きです(db、fronted、backed ...)。Docker docs 「開発、テスト、およびステージング環境に最適です」 この文は本番環境については何も言いません。したがって、私はここで混乱しています。Docker Composeはプロダクションに適していますか?

Dockerfileを使用して生産イメージを一から作成し、すべてのLAMPスタック(など)をそこにインストールする方が良いですか? docker-compose.ymlで運用環境を構築する方が良いですか? Dockerが明示的にComposeがプロダクションに最適だと言っていない理由(オーバーヘッド、リンクなど)はありますか?

答えて

8

本当にあなたのケースでは「生産」を定義する必要があります。
Composeは、単一のコマンドで複数のコンテナを開始および停止するだけです。通常のドッカーコマンドではできないミックスに何も追加しません。

"production"が単一のドッカーホストで、すべてのインスタンスとリレーションシップが定義されている場合、作成することができます。
しかし、クラスタ全体で複数のホストと動的スケーリングが必要な場合は、本当にswarmや別のオプションがあります。

+1

はい。それに真実でありますが、また、集団クラスターに対して作成することもできます –

+0

ありがとうございました。ドッカーの生態系に頭を包むだけで時間がかかります。 –

3

@ChrisSaintyが既に述べたように、作成は単なるオーケストレーションツールです。独自のDockerfilesで構築した独自の画像を、単一のホストで作成設定で使用することができます。ただし、単一のDockerホストと同じAPIを公開するため、compose against a swarm clusterにアクセスすることは可能です。

私の意見では、効率的な高可用性を備えたサービスを調整するためにコンテナを使用してmicroserviceアーキテクチャを実装する簡単な方法です。これに加えて、この公式documentationに実務環境での作成の使用に関する良い習慣をチェックすることをお勧めします。

関連する問題