There’s a new community standard for container metadata in town, with contributors from Puppet, Mesosphere, Microscaling Systems, Container Solutions, Weave, Cloud66, Tigera and others. The release candidate of Label Schema is being launched Friday at Container Camp in London.
The initiative was inspired by Puppet’s Gareth Rushgrove, who pointed out how useful additional metadata about a container can be. Docker already provides the LABEL directive for adding arbitrary key-value pairs to any container image, and Label Schema aims to build on this by agreeing standards amongst the community for some common data.
If toolsmiths agree on labels for common data such as build references, contact information and usage instructions, this avoids users having to duplicate data when they want to use a combination of different tools.
The spec has already seen some take-up even while it has been in draft status. At Microscaling Systems we have seen 125 public images inspected through our MicroBadger tool that uses label-schema format labels — here are a couple of examples.
What can you do with labels? Well, one thing you can do straight away is to filter your Docker images. Here’s a simple example of querying for all the images provided by a particular vendor:
docker images --filter "label=org.label-schema.vendor=<vendorname>"
Things get a lot more interesting when multiple tools support the same labels. For example, a build tool can automatically add a version label, and then visualization and logging tools can automatically include that version information in their output — all without those tools needing to know the others exist.
The spec is a Release Candidate, and on behalf of all the maintainers we’re keen for comments and contributions — and we’re even more keen to hear about tools that make use of the common standard. You can file issues or make pull requests on label-schema on GitHub, and we also have a mailing list you’re welcome to join.
Feature image via Pexels.