Last year at DockerCon and Microsoft Connect, we announced the Cloud Native Application Bundle (CNAB) specification in partnership with Microsoft, HashiCorp, and Bitnami. Since then the CNAB community has grown to include Pivotal, Intel, DataDog, and others, and we are all happy to announce that the CNAB core specification has reached 1.0.
We are also announcing the formation of the CNAB project under the Joint Development Foundation, a part of the Linux Foundation that’s chartered with driving adoption of open source and standards. The CNAB specification is available at cnab.io. Docker is working hard with our partners and friends in the open source community to improve software development and operations for everyone.
Docker’s Implementation of CNAB — Docker App
Docker was one of the first to implement the CNAB specification with Docker App, our reference implementation available on GitHub. Docker App can be used to both build CNAB bundles for Docker Compose (which can then be used with any other CNAB client), and also to install, upgrade, and uninstall any other CNAB bundle.
It also forms the underpinnings of application templates in Docker Desktop Enterprise. With Docker App, we are making CNAB-compliant applications as easy to use as Docker images; you will get the same benefits of immutability and a simple user experience for building, sharing and running containers now applied to multi-service applications.
Docker’s contribution to CNAB stems from our desire to build an application ecosystem like we did for the container ecosystem. And CNAB is the building block for this — it’s a packaging format. Going forward, Docker recognizes that a single container is not enough to express an application. This is why Docker’s strategy is to help grow this application ecosystem and make modern applications a core part of our platform. This means building, managing, and securing all of your applications from traditional applications to cutting-edge microservices — and deploying them anywhere.
What Comes Next
Docker is excited to see the momentum building with CNAB from our new partners, Pivotal, DataDog, and Intel as well as Microsoft, Bitnami, and HashiCorp who started the journey with us. There is sill a lot more to do, including ensuring that both Docker App – our reference implementation of the spec – and all other CNAB tools become core 1.0 compliant. We will also continue to provide community leadership and help drive further industry adoption of CNAB. Stay tuned for more exciting announcements from Docker and the CNAB community.
Docker welcomes you to get involved with the community. Here are some resources to get started:
- CNAB explainer video presented by Docker and Microsoft.
- CNAB 1.0 Core Specification
- Join the #cnab channel in the CNCF’s Slack. The CNAB community has an open meeting every other Wednesday at 09:00AM US Pacific.
- Video from DockerCon19: Deploying Distributed Applications with Docker App and CNAB
- Docker App: Make your Docker Compose applications reusable, and share them on Docker Hub
- Deis Labs has a blog series on CNAB: Part 1, and Part 2.