さまざまなストレージドライバでDockerコンテナを実行する

さまざまなストレージドライバでDockerコンテナを実行する

別のストレージドライバを使用して別のDockerコンテナを起動できますか?たとえば、AUFSを持つコンテナ1とOverlay2を持つコンテナ2?

答え1

見たら文書をクリックすると、ストレージドライバの選択がDockerデーモンレベルで設定されていることがわかります。同じDockerデーモンが管理するすべてのコンテナとイメージは、ストレージドライバを共有します。

ストレージドライバの動作方法を理解すると、これは論理的に理解されます。簡単に言えば、ストレージドライバがDockerイメージレイヤ間の相互作用を管理するという概念です。 Dockerリポジトリからイメージをダウンロードするときのシステムのストレージドライバ構成によって、イメージがシステムにローカルに保存され管理される方法が決まります。さまざまなストレージドライバは実装を異なる方法で処理し、あるストレージドライバによって管理されるレイヤは他のストレージドライバと互換性がありません。また、ドキュメントには、システムのストレージドライバ構成を変更すると、既存のコンテナやイメージにアクセスできなくなることが示されています。

ストレージドライバの選択は、システムが提供するサポートレベル、ワークロード特性など、さまざまな要因によって異なります。

詳しくはこちらをご覧くださいストレージドライバ情報&ストレージドライバの選択Dockerドキュメントから。

最後に、異なるコンテナに異なるストレージドライバを使用する場合は、同じホストまたは異なるホストで複数のドッカーデーモンを実行することを検討できます。前述のように、実装は互換性がないため、イメージデータとコンテナデータはこれらのデーモン間で共有できません。

関連情報