2013年に急に頭角を現したDockerは、その後のコンテナの普及の中心的な勢力になった。さらにその後Kubernetesが、コンテナ化されたアプリケーションのデリバリーを制御する(オーケストレーションする)ツールとして登場したが、Dockerは、同社が追究する純粋なコンテナのデプロイと、それらツールとの間にギャップを感じていた。今サンフランシスコで行われているDockerConで同社はDocker Enterprise Editionの次のリリースを発表し、そのギャップを埋めようとしている。
Dockerのチーフプロダクトオフィサー(CPO) Scott JohnstonによるとDocker Enterprise Editionに新たに導入された連合的(federated)アプリケーション管理機能により、オペレーションは複数のクラスターを管理でき、それらのクラスターはオンプレミスでも、クラウド上でも、そして複数のクラウドプロバイダーに散在していてもよい。この連合的アプリケーション管理は、アプリケーションがどこにあってもよく、そして三大クラウドプロバイダーのマネージドKubernetesツール、Azure AKS, AWS EKS, Google GKEをサポートする。
Johnstonによると、コンテナのデプロイは問題の最初の部分にすぎない。アプリケーションをデプロイするときには、Kubernetesなどオーケストレーションツールの外にも多くの問題が存在する。“そこで、DockerフォーマットのコンテナとKubernetesやComposeのデスクリプションファイルでコンテナのポータビリティは得られるが、いったんそれらがひとつの環境へ上陸すると、その環境独自のデプロイスクリプトやセキュリティモデル、ユーザー管理などがある。だからアプリケーションがポータブルでも、それらのアプリケーションのアプリケーション管理はそうではない”、と彼は説明する。
彼によると、これによって、さまざまなデプロイメントツールが新たなレベルの複雑性を持ち込む。それらは、コンテナの使用によって排除されるはずだった複雑性だ。この問題は、複数のクラウドにデプロイするときにとくに顕著だ(ときにはオンプレミスでも)。オペレーションチームが自分たちの仕事であるロードバランシングやセキュリティ、テストなどの仕事に取り組むときは、環境によって異なることのない、一貫したやりかたで行いたい。そこでJohnstonによれば、複数の環境を一箇所で管理できる場所をDocker EEが作り出し、すべてのアプリケーションとデータとインフラストラクチャを統一的に管理するという、クラウドネイティブの目標を達成する。
この連合的アプリケーション管理に加えてDockerは、Kubernetes for Docker Enterprise Edition上のWindows Serverコンテナを発表した。Linuxコンテナのサポートは、昨年発表している。
そして同社は、技術系でない社員でも、コマンドラインでなくグラフィカルな画面のガイドに従って容易にデプロイができるよう、Dockerのデプロイメントにテンプレートベースの方式を導入した。
連合的アプリケーション管理は、今年後半にベータが始まる。Windows Server Containersは、Docker Enterprise Editionの次のリリース(今年の終わりごろ)に含まれ、Templatesは、今年の終わりごろのDocker Desktop Betaで提供される。