Docker is a software platform that allows applications to run in isolated containers. Containers use layers and images to package up code and dependencies to enable portable deployment between computing infrastructures. Docker containers build upon the idea of operating-system-level virtualization to deliver software in packages called containers that include everything needed to run the application.