Pre-release

@stevvooe stevvooe released this Sep 22, 2017 · 1506 commits to master since this release

Assets 3

Welcome to the second beta release of containerd.

The highlights of this release focus around making integrations much easier.
The Container.Extensions field allows one to add arbitrary metadata, such as
protobufs and json, to a container metadata object. The Tasks.Wait rpc makes
waiting for containers to exit much simpler in practice.

With this release, containerd now fully supports pulling multi-platform
Docker and OCI images, complete with foreign layer support.

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

Upgrading

Label validation now requires that the key and value together are under 4096
bytes. If you had labels large than this size, metadata objects may need to be
rewritten.

The metrics API has been moved from /metrics to be versioned under
/v1/metrics and is now slated to be covered under our release policy.

The Tasks service now has a Wait rpc to make it easier to wait on container
processes, eliminating race conditions that were hard to handle with events.
Old clients will still work with events, but they will suffer from the problems
that this change is meant to solve.

Multi-Platform

While containerd is fairly agnostic to the image format, the release of
multi-platform images on Docker Hub caused some issues with the client-side
pull support. containerd now properly handles multi-platform Docker and OCI
images. This includes support for foreign layers.

This means that one should be able to pull multi-platform images without issues
for Linux and Windows, as well as most architectures. This works even if the
platform doesn't support the particular image.

Container Extensions

A new field, Container.Extensions, supports storing integration specific
structures directly in containerd. This allows drivers like Docker and
CRI-containerd to store their own metadata objects in containerd. This
obviates the need for secondary storage systems and ensures updates follow the
same transaction semantics as other parts of containerd. At the same time, it
also avoids problems with "label bloat" when storing more complex metadata.

JSON and protobuf are supported.

New Maintainer

We want to welcome a new maintainer to containerd, Akihiro Suda. The
container ecosystem would be as strong as it is today without his tireless
efforts. We are excited to have him on board and his presence will ensure that
containerd will be a strong platform.

Contributors

We'd like to extend a thanks to the following people who contributed to this
release:

Akihiro Suda
Allen Sun
Brian Goff
Derek McGowan
Ian Campbell
Jess Valarezo
Kenfe-Mickaël Laventure
Kunal Kushwaha
Lantao Liu
Michael Crosby
Mike Brown
Phil Estes
Roy Inganta Ginting
Stephen Day
Tao Qingyun
Tobias Klauser
yanxuean

Changes

20c6211 Merge pull request #1550 from stevvooe/beta1
95675f3 release: prepare 1.0.0-beta.1
316ce18 Merge pull request #1549 from estesp/fix-getting-started-examples
fe1e00c Fix example using old GenerateSpec function
9a7e776 Merge pull request #1547 from AkihiroSuda/remove-dist-grpc
3a88be3 design: remove distribution GRPC service
df896c9 Merge pull request #1528 from jessvalarezo/labels-validate
ba53292 Merge pull request #1544 from allencloud/consistent-display-format
94b5aaf Merge pull request #1543 from Random-Liu/fix-container-timestamp
82a68e2 Merge pull request #1542 from stevvooe/update-architecture-diagram
d5b027c make command help display consistent
5452112 Fix container CreatedAt and UpdatedAt.
709d34f Merge pull request #1537 from allencloud/add-reponse-body-close
c6d5595 add a response body close
fe9d6a4 Merge pull request #1525 from crosbymichael/shim-hang
18c4322 Labels are consistently validated across services
04ed74f README, design: update architecture diagram
3273315 Merge pull request #1541 from stevvooe/update-releases
c381a9e RELEASES: update component table
90d7452 Merge pull request #1540 from estesp/revert-temp-image-ref
2146fee Merge pull request #1534 from crosbymichael/metricsv1
e2f3e31 Make WithCheckpoint() work with manifest list images
cadee03 Revert "Merge pull request #1502 from crosbymichael/test-image"
d67763d Add wait API endpoint for waiting on process exit
2f5dda6 Merge pull request #1536 from stevvooe/foreign-layers
26329b2 Merge pull request #1535 from dmcgowan/fix-pull-multi-arch
13771fb images, remotes: add support for foreign layers
eef47ff Add platform filtering on children handler
f23edd3 Add v1 to metrics API endpoint
9934acb Merge pull request #1532 from mikebrow/seccomp-default-proc-fix
ef5f202 Merge pull request #1533 from stevvooe/specifier-default
9163377 platforms: provide simpler function for common use
78c4e55 Merge pull request #1529 from crosbymichael/console
120bb4c fixes missing default permission
7030a4a Close epoller on task stop
781ce65 Update console dep to b28c739c79ce69d017e3691ad366
d700a9c Merge pull request #1500 from crosbymichael/typeurl
d22160c Vendor typeurl package
929283a Remove typeurl package from repo
f41871b Merge pull request #1515 from dmcgowan/add-akihiro
0cb2c96 Merge pull request #1519 from crosbymichael/contrib
58015ab Add readme to contib
e517952 Merge pull request #1378 from cpuguy83/container_store_extra_data
59384ff Merge pull request #1522 from qingyunha/master
e1ce48d README.md: correct headers level
b6a0fb1 Merge pull request #1518 from crosbymichael/security
8ac9743 Merge pull request #1510 from crosbymichael/signals
2e830e0 Update security reporting text
72f380a Merge pull request #1517 from mlaventure/remove-toml-omitempty
4bfe3a9 Merge pull request #1516 from tklauser/fix-cstring-leaks
7fdf8cd Handle signals first on boot
4a58240 mount: fix CString memory leaks
3596ec5 Add Akihiro as maintainer
f2d1459 Remove omitempty from toml tags
cf1d422 Merge pull request #1511 from crosbymichael/solaris
6d440dc Remove solaris from travis
63654f9 Merge pull request #1509 from crosbymichael/ns-event
d1e11f1 Merge pull request #1465 from AkihiroSuda/gcr
14c36cc Set ctx ns before publish
9f28040 Merge pull request #1506 from dmcgowan/unpack-manifest-list
46ded63 Support for multi-arch image unpacking
cc75a11 Merge pull request #1484 from yanxuean/loadconfig
4943771 Merge pull request #1504 from stevvooe/resolve-platforms
0f6d1d2 Merge pull request #1501 from crosbymichael/trap-err
bcfdbb1 Merge pull request #1503 from crosbymichael/update-runc
ea8adf9 cmd/ctr: show resolved image platform
37d049d Merge pull request #1493 from mikebrow/seccomp-helper
8785f3f Merge pull request #1403 from stevvooe/platform-selectors
775f7ce platforms: update format for platform specifier
77f699c Update runc to 593914b8bd5448a93f7c3e4902a03408b6d
426650f adds seccomp helpers
03b43ac Trap close error on shutdown
558b46f Merge pull request #1502 from crosbymichael/test-image
0e616f4 Merge pull request #1496 from kunalkushwaha/movefile-testcase
ca3f16c [tmp] Use amd64 test image
8442e4b Testcase added for Moving files in snapshot layers
a2aa4ec Merge pull request #1485 from AkihiroSuda/expose-differ
313cebc Merge pull request #1473 from kunalkushwaha/snapshot-testcases
1310c85 differ: expose newWalkingDiff() for standalone buildkit
39b5f90 Improve server.LoadConfig function
f7d31e2 api, metadata: use map type for Container.Extensions
94f6be5 platforms: implement matcher support
fb06883 platforms: define selectors for platforms
52fbc5f Merge pull request #1490 from ijc/defalt
a791f04 Merge pull request #1489 from crosbymichael/list-state
128aaf6 Correct spelling of default.
3552ce5 Add field to Container for client-defined data
951c129 Handle locking and errors for process state
17901fa Merge pull request #1488 from crosbymichael/prom-containers
72bcdb8 Add config for exporting container metrics to prom
aa8bd16 Merge pull request #1487 from crosbymichael/guide
9c20795 Add go build and ./main to guide
34a58ce Improve the getting started guide
2cfd7df Merge pull request #1456 from ijc/ctr-list-no-labels
2f08032 remotes/docker: add scope (registry:foo/bar:pull)
aaae706 remotes/docker: allow 404 for POST /v2/token
b6fb234 Testcase added for deletion of files in lower layer
121d337 Added testcase Removal of intermediate snapshot
94b0d0e ctr: drop labels from ctr containers subcommand list