Plex、OpenVPN、Nextcloudなど、FreeBSDでそれぞれ刑務所で実行される複数のサービスを実行する大規模なサーバーを考えてみましょう。
DockerはLinuxアナログとしてこの設定に適していますか?
私はDockerや他のコンテナソリューションを試したことがありませんが、オンラインで読んだことによれば、Dockerコンテナは短期使用に適しています。新しいサーバーを起動し、使用が終わったらシャットダウンすることができ、その後必要に応じて使用します。別の新しいサーバーが表示されます。
継続的に実行され、頻繁に変更され(コンテナ化されたサービスに新しいファイルがアップロードされるなど)、FreeBSD Jailのように必要に応じて簡単に開始および停止できる孤立したサービスを持つことが目標である場合、Dockerは正しいソリューションですか?
答え1
概念的には、DockerコンテナはFreeBSDのJailに似たLinuxネームスペースを使用します。
また、Dockerコンテナを使用すると、ファイルを介して「階層」をインクリメンタルに簡単に追加できるため、必要なサービスを実行するための標準化された環境をすばやく取得できます。これらのレイヤーは静的と見なされ、この環境が変更されると新しいコンテナが展開されますが、Dockerコンテナに別のコンテンツをインストールし、必要に応じてファイルを頻繁に変更することもできます。
Dockerコンテナを長時間実行するのに大きな問題はありません。ただし、アプリケーションを拡張する必要がある場合、Dockerコンテナは本当に輝いています。必要に応じてさまざまなホストに複数のコンテナコピーをデプロイでき、すべての需要に応じて行われ、Dockerはそれを抽象化します。実行中のホストです。
したがって、複数のサービスがある場合は、通常、各サービスを独自のコンテナ内で実行します。
これが質問に対する答えであるかどうかはわかりません。おそらくこれについて学ぶ最善の方法は、Dockerコンテナを自分で作成または配布して、要件に適していることを確認することです。