Docker Environment

Containers provide an elegant solution for those looking to design and deploy applications at scale. While Docker provides the actual containerizing technology, many other projects assist in developing the tools needed for appropriate bootstrapping and communication in the deployment environment.

One of the core technologies that many Docker Environment rely on is service discovery. Service discovery allows an application or component to discover information about their environment and neighbors. This is usually implemented as a distributed key-value store, which can also serve as a more general location to dictate configuration details. Configuring a service discovery tool allows you to separate your runtime configuration from the actual container, which allows you to reuse the same image in a number of environments.

Docker Environment Products & Services

(Providing you specialized tools to help build modern, distributed applications.)

Docker Registry

Docker Engine, registry and support

Docker Registry is an open source application dedicated to the storage and distribution of your Docker images. Its seamless architecture allows both for fine grain integration with other systems and high-level scalability. Aggressively developed, its vibrant community includes industry leaders and users using it at the core of their images distribution solutions. Use the storage of your choice, from supported backends (S3, Azure or POSIX-compliant file systems), community contributed backends (Ceph, OpenStack Swift, Aliyun), or implement your own with the Backend Storage API. Leverage Docker Registry’s rich notifications API to build CI/CD pipelines or simply notify users of new images.

Docker Hub

A hosted registry service

Docker Hub is a cloud-hosted service from Docker that provides registry capabilities for public and private content. Collaborate effortlessly with the broader Docker community or within your team on key content, or automate your application building workflows. Share your images with the community or host in private repositories for secure collaboration with your team. All users get unlimited public and one private repository for free.

Docker Trusted Registry

Private dedicated image registry

Docker Trusted Registry can be installed on the infrastructure of your choosing (physical, virtual, cloud) to give you control in where you store your Docker images. Manage and distribute your Docker images from within your firewall. Control who has access to the Docker Trusted Registry server and the Docker images that it stores. Create admin, user or read-only level permissions for users and groups.

Docker Engine

Creates and runs Docker containers

The core of the Docker platform is Docker Engine, a lightweight runtime and robust tooling that builds and runs your Docker containers. Docker Engine runs on Linux to create the operating environment for your distributed applications. The in-host daemon communicates with the Docker client to execute commands to build, ship and run containers. Docker Engine is one of the most rapidly growing open source projects on Github. The software is available as an open source download or with commercial support subscription. These are all part of the docker engine.

Kitematic

Desktop GUI for Docker

Kitematic is an automated process which installs and configures the Docker environment on your machine. It installs a GUI interface to control your Docker containers from Docker hub to browse, search and pull docker images. Kitematic desktop client is available for both Mac and Windows laptop users.

Docker Machine

Automated Docker provisioning

Docker Machine automatically sets up Docker on your computer, on cloud providers, and inside your data center. Docker Machine provisions the hosts, installs Docker Engine on them, and then configures the Docker client to talk to the Docker Engines. Docker Machine can create hosts on most major virtualization hypervisors and in cloud service providers. Docker Machine has driver support for AWS, Digital Ocean, Google Cloud Platform, IBM Softlayer, Microsoft Azure and Hyper-V, OpenStack, Rackspace, VirtualBox, VMware Fusion®, vCloud® Air™ and vSphere®.

Docker Swarm

Host clustering and container scheduling

Docker Swarm provides native clustering capabilities to turn a group of Docker engines into a single, virtual Docker Engine. With these pooled resources, you can scale out your application as if it were running on a single, huge computer. Docker Swarm serves the standard Docker API, so any tool which already communicates with a Docker daemon can use Docker Swarm to transparently scale to multiple hosts: Dokku, Docker Compose, Krane, Flynn, Deis, DockerUI, Shipyard, Drone, Jenkins and, of course, the Docker client itself.

Docker Compose

Define multi-container applications

Docker Compose allows you to define your multi-container application with all of its dependencies in a single file, then spin your application up in a single command. Your application’s structure and configuration are held in a single place, which makes spinning up applications simple and repeatable everywhere. Docker Compose defines your entire application with all of its dependencies. No more installing Postgres on your computer.