Docker is an open platform for distributing software application in containers. It utilizes operating system-level virtualization for process and full resource isolation through cgroups, capabilities, SELinux, AppArmor, netfilter, and Linux kernel namespaces. Its libcontainer is based on libvirt and lxc. Docker Engine is the application and environment packaging tool. And Docker Hub is a cloud service for sharing prepackaged containers.
major feature: Builder: Add capability to specify images used as a cache source on build. These images do not need to have local parent chain and can be pulled from other registries. (experimental) Add option to squash image layers to the FROM image after successful builds. dockerfile parser with empty line after escape. Add step number on `docker build`. Add support for compressing build context during image build. add `--network` to `docker build`. inconsistent behavior between `--label` flag on `docker build` and `docker run`. image layer inconsistencies when using the overlay storage driver. Unused build-args are now allowed. A warning is presented instead of an error and failed build. builder cache on Windows. Contrib: Add support for building docker debs for Ubuntu Xenial on PPC64. Add support for building docker debs for Ubuntu Xenial on s390x. Add RPM builder for VMWare Photon OS. Add shell completions to tgz. Update the install script to allow using the mirror in China. Add DEB builder for Ubuntu 16.10 Yakkety Yak. Add RPM builder for Fedora 25. Distribution: Update notary dependency to 0.4.2 (full changelogs here). - Support for compilation on windows docker/notary#970. - Improved error messages for client authentication errors docker/notary#972. - Support for finding keys that are anywhere in the ` /.docker/trust/private` directory, not just under ` /.docker/trust/private/root_keys` or ` /.docker/trust/private/tuf_keys` docker/notary#981. - Previously, on any error updating, the client would fall back on the cache. Now we only do so if there is a network error or if the server is unavailable or missing the TUF data. Invalid TUF data will cause the update to fail - for example if there was an invalid root rotation. docker/notary#982. - Improve root validation and yubikey delogging docker/notary#858 docker/notary#891. - Warn if certificates for root or delegations are near expiry docker/notary#802. - Warn if role metadata is near expiry docker/no