How Joyent and Docker are Working Together

November 07, 2014 - by Bryan Cantrill

You may have seen that we recently open sourced SmartDataCenter and Manta. Because Joyent pioneered the use of infrastructure containers, you would be forgiven for asking the question: does this mean that SDC somehow competes with Docker? The answer is emphatically not — and in fact, to the contrary: we see Docker as entirely complementary to Joyent solutions. While Docker delivers application containers that are easy to create and portable across different infrastructures, our focus is on making Joyent the best place to run Docker containers.

As for the specifics of what Docker on SmartDataCenter might look like, today you can leverage SmartDataCenter (or the Joyent Public Cloud) to create KVM-based Docker hosts to support your Docker deployments. But because Joyent solutions are built on infrastructure containers, there are some further-reaching possibilities — ones that allow Docker containers to run directly on the metal instead of being tied to virtualized hardware. To that end, we have a nascent Docker API endpoint for SDC that we intend to couple with our emerging ability to natively execute Linux binaries on SmartOS to be able to run Docker images securely and at scale directly on hardware. This is still primordial — there’s much to be built here and many details to be worked out — but the many talented engineers here at Joyent, and in the SmartDataCenter and SmartOS communities, are engaged in this effort and driving hard to completion.

As part of our commitment to this rapidly emerging community, we will also participate in and contribute to the Docker project. In particular, as the community explores things like network virtualization and ZFS-based storage, we are sharing our perspective (which is to say, our scars) and collaborating with the community on developing future-proof abstractions. We see the great promise of Docker, and we look forward to working with the community to develop (and upstream!) the abstractions that will make Docker the de facto standard for application containers for developers, while we also work to make the Joyent Public Cloud and private cloud software (SmartDataCenter) the best places to run them!