「Docker 1.6」が米国時間4月16日にリリースされた。今回のバージョンの特徴は、運用のしやすさを改善するアップデート内容が多く含まれていることだ。
「Docker Engine 1.6」には、運用チームを支援する機能の1つとして、JSONおよびsyslog用のAPIが用意された。
Scott Johnston氏
提供:Docker
Docker 1.6は、データセンターで利用可能なツールをプラグインできる、従来よりも洗練されたインターフェースを備えている。Dockerの製品担当シニアバイスプレジデントScott Johnston氏は、Logglyやlogstash、Splunkなどさまざまなロギングソリューションベンダーが、このオープンインターフェースを利用して将来プラグインを提供してくれることを期待しているという。
新たに書き直された「Registry 2.0」も運用チームを支援することを意図したものだ。システム管理者がDockerインターフェースを通じて、どこで何が動いているかを理解し、クエリをかけることができるように設計された、イメージIDをラベリングする機能が追加された。
Johnston氏によれば、例えばOpenSSLの脆弱性への対応のような場合にもこの機能が利用できるという。開発者がOpenSSLに特定のIDを関連づけておけば、システム管理者はクラスタ全体にクエリをかけて、IDが一致するものを特定し、潜在的な脆弱性を持つイメージだけをアップデートするといった使い方ができる。
また、今回の新バージョンでは、イメージのアップロードとダウンロード(Docker pull)の処理方法を変更し、性能が改善した。
「バージョン1.0ではイメージのレイヤを順番にダウンロードしていた。これはスタートとしてはよかったし、初期段階では問題はなかった。しかし、開発者やシステム管理者がスタックを積み重ねるにつれ、イメージは大きくなっている。このため、順番にダウンロードするpullでは、性能的な問題が出ている」とJohnston氏は言う。
「このためレジストリを再設計し、イメージを構成する各レイヤを並列にダウンロードできるようにした。Docker 2.0では、Docker pullを実行すると、新たなプロトコルがイメージを構成するすべてのレイヤを同時に並行してpullし、開発者のエンジンホストにそれらのレイヤを再構成する」(Johnston氏)
Engine 1.6では、「Windows」用クライアントも提供されている。また、オーケストレーション用ツールである「Machine」、「Swarm」、「Compose」は、協調して動作するようになった。
Composeは多くのコンテナから複雑な分散アプリケーションを構築するプロセスを単純化するためのツールだが、バージョン1.2.0では、マルチコンテナアプリケーションの記述を複数の下位ファイルに分割できるようになった。これによって、アプリケーションを複数のサービスに分解できるようになる。
この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。