Docker provides a way to run applications securely isolated in a container, packaged with all its dependencies and libraries. Because your application can always be run with the environment it expects right in the build image, testing and deployment is simpler than ever, as your build will be fully portable and ready to run as designed in any environment. And because containers are lightweight and run without the extra load of a hypervisor, you can run many applications that all rely on different libraries and environments on a single kernel, each one never interfering with the other. This allows you to get more out of your hardware by shifting the “unit of scale” for your application from a virtual or physical machine, to a container instance.
A native application using the macOS sandbox security model which delivers all Docker tools to your Mac.
A native Windows application which delivers all Docker tools to your Windows computer.
Install Docker on a computer which already has a Linux distribution installed.
A hosted registry service for managing and building images.
A hosted service for building, testing, and deploying Docker images to your hosts.
(DTR) stores and signs your images.
(UCP) Manage a cluster of on-premises Docker hosts as if they were a single machine.
Automate container provisioning on your network or in the cloud. Available for Windows, macOS, or Linux.
Define applications built using multiple containers.