LoginSignup
20
7

More than 5 years have passed since last update.

コンテナ関連コミュニティの動向 (2017年6月・7月)

Posted at

気になっているニュースを適当に書き連ねてみた.

Docker関連

Docker 17.06 (6/28)

Docker 17.03以来,2番目のquarterly release (新スキームでの安定版).次のquaterly releaseは17.09.

17.05から,あまり大きい変更はないが,Multi-stage Dockerfileをサポートするquarterly releaseとしては初.

また,このバージョンからは,Moby Projectのリポジトリ (https://github.com/moby/moby) ではなく,Docker社のリポジトリ (https://github.com/docker/docker-ce) のソースを用いてビルドされるようになった.

両リポジトリの内容はほぼ同じ.Moby Projectのリポジトリへの変更は,Docker社員が随時Docker社のリポジトリにcherry-pickしてくれる.

Docker 17.07 (8月になっても未リリース..)

  • ~/.docker/config.json にプロキシの設定を書いておくと,docker build時やdocker run時に使われるようになった. https://github.com/docker/cli/pull/93
  • docker ps 時のコンテナオブジェクトに対するロックが無くなった.劇的に軽くなったように感じられる.https://github.com/moby/moby/pull/31273
  • docker build時にデーモンに送信されるコンテキストを,2回目以降は差分のみ転送できるようになった. https://github.com/moby/moby/pull/32677
  • "Linux containers on Windows" (LCOW) のコードも部分的に入り始めたが,まだ動かない.

Moby Project関連

※ Dockerの上流となっているcommunity-drivenなプロジェクト. 大まかには,Docker : Moby Project ≒ RHEL : Fedora と考えてよい.

Moby Core (7/12)

4月,github.com/docker/dockerリポジトリが github.com/moby/moby にリネームされたが,近々 更に github.com/moby/moby-core にリネームされる予定.
従来のdockerdとしての"moby" (→Moby Core)と,Mobyコンポーネントを組み合わせるツールとしての"moby" (github.com/moby/tool)とが紛らわしいための措置.

/usr/bin/dockerdのバイナリも,/usr/bin/moby-core-serverのような名前になる見込み.
他にも,Dockerfileなど名前に"docker"とつくものは全て,Moby Coreからは順次削除される見込み. https://forums.mobyproject.org/t/topic-find-a-good-and-non-confusing-home-for-the-remaining-monolith/37/66

BuildKit (6/24)

docker build を再実装する構想.

  • low-levelなフォーマットとして「LLB」が提供される.LLBは人間が直接読み書きするものではない.
  • LLBの命令間の依存性は,DAGとして表現される.並行性の抽出などによる高速化が可能となる.
  • 従来のDockerfileは,LLBに変換されて実行される.今後,Dockerfile以外の上位言語も出てくるかもしれない?

OCI関連

Image Spec & Runtime Spec v1.0発表 (7/19)

https://www.opencontainers.org/announcement/2017/07/19/open-container-initiative-oci-releases-v1-0-of-container-standards
https://blog.docker.com/2017/07/oci-release-of-v1-0-runtime-and-image-format-specifications/

2年かかってようやく,イメージ仕様・ランタイム仕様の標準化がなされた.

今後は,OCI仕様準拠実装の認定などが,OCIの主なミッションとなりそう.https://github.com/opencontainers/certification

イメージ配布プロトコル(Docker Registry HTTP APIがde facto standard)については,今のところOCIのスコープ外であるが,今後OCI入りする可能性もあり.

containerd関連

Docker・Kubernetesなどで共通で使われる予定の,次世代ランタイム.

image

alphaステージに到達 (7/20)

実装予定の機能はほぼ実装されたが,まだWindows対応などの課題あり.

Swarmkit関連

CNI対応のPR (7/6)

libnetwork (CNM)に加え,CNIもSwarmkitで使えるようになる.
今後はDockerでもKubernetesでも,CNIが共通のフレームワークとなっていきそう.

Kubernetes関連

Kubernetes 1.7リリース (6/29)

StatefulSetがベータになった.

参考: http://qiita.com/tkusumi/items/817cf85917efd24c7a4f

Azure関連

Azure Container Instances (7/26)

いちいちVMのインスタンスを立ち上げずに,直接コンテナを起動できるサービス.
Kubernetesでもオーケストレートできる. https://github.com/azure/aci-connector-k8s
ようやくCaaSらしいCaaSが出てきた印象.

Draft (5/31)

Dockerfileやchartをいちいち書かなくても,簡単にサービスをKubernetesにデプロイできるツール

Oracle関連

Smith, Crashcard, & Railcar (6/29)

コンテナ関連のOSSが3つ同時に発表された.

  • Smith: 「microcontainer」をビルドするツール.イメージはread-only,shell無しが基本.軽くてセキュア.(https://blogs.oracle.com/developers/the-microcontainer-manifesto)
  • Crashcard: 「microcontainer」用のデバッガ.microcontainer内にshellをインストールすることなく,tcpdump, straceやgdbなどを実行できる.
  • Railcar: Rustで書かれたOCIランタイム実装.Rustで書かれているので,GCのオーバヘッドや,namespace関連の問題が無い.

containerd, DockerのSolaris対応

Docker 1.13でSolarisサポートが入りかけていたが,その後動きがなかった

最近,作業が再開された模様.
https://github.com/containerd/containerd/pull/1224

20
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
20
7