Containerisation with Docker


Diaxion is now a Docker partner and we are gearing up to help our customers understand what Docker is and how it best fits into your organisations capabilities. Docker is a container platform. By now a lot of IT teams have heard about containerisation and are wondering what it means. This is a brief introduction to containerisation and the benefits it can realise for your team.

Containerisation is an old concept in computing and has arguably existed since the 1970s when /chroot/ on Unix systems became available. More recently VMware brought their whole-of-machine level virtualisation capability to the x86 computing world with the vSphere product. Today, just about every IT team has some sort of VMware running in their data centre and it is the new normal.

The Docker platform is the next logical extension of virtualisation where, instead of running the application and operating system in the container just the application is run inside the container and the underlying operating system on the host provides the OS services to all of the containers running in Docker.

Benefits include:

  • Container sizes are greatly reduced because each container doesn’t have a copy of the operating system in it. This has flow on benefits as storage needs are reduced and containers can be very quickly downloaded and utilised.
  • Containers start and stop very quickly. This means that containerised services can scale up and scale down more quickly than even cloud based auto-scaling solutions since there is no waiting time for the operating system to get started.
  • Much like virtual machines, containers can be run on any compatible host with the major benefit that hosts can be physical, virtual (VMware, KVM, Xen etc) or even different Cloud IaaS platforms (Azure, Amazon Web Services, Google, Alibaba etc).
  • The approach is not without some impacts though:

  • In general Linux containers must be run on Linux Docker hosts and similar for Windows containers which must be run on Windows hosts. There are exceptions to this, however they are generally not production ready
  • A new technology platform and capability brings with it new governance and operational needs
  • Not all applications are suitable for use with containers so careful assessment and selection of apps for containerisation is required
  • Teams that have already investigated containers and Docker have likely encountered Docker Community Edition (CE) which is an excellent starting point for individual or non-production experimentation.

    Docker Enterprise Edition (EE) is the business ready, production grade offer that includes SLA backed support, automated security scanning of application images, orchestration and management tools and broad support for a variety of infrastructure platforms. The orchestration tools included with Docker EE allow you to mix cluster node members across separate infrastructure stacks. You can have a cluster node in Azure, another node in AWS and Docker EE treats both nodes equally and will schedule images on nodes regardless of the underlying infrastructure stack.

    Containerisation using Docker EE is an effective enabler for hybrid-cloud and further separates the applications and business services from the underlying infrastructure complexity.

    When you’re looking at which apps and services are in scope for attention or upgrade next financial year ask if containerisation is feasible. Diaxion’s existing Cloud Readiness assessment services are a good fit for this type of activity.

    If your team is already on a containerisation journey and getting bogged down in dealing with configuration headaches with the open-source or CE solutions then Docker EE is the right candidate to make your Docker platform enterprise ready. Installation of Docker Enterprise Edition on Azure or AWS IaaS is a common and fully supported path that allows your organisation to immediately benefit for the advantages of Docker EE with a minimal investment. Diaxion can help you plan and deploy a Docker EE solution on your existing public or private cloud, on-premise infrastructure or a combination of existing and future technologies.