Empower Your Business in the Cloud with Docker Enterprise as a Service

Publish date:

In the API economy, companies need to respond to market opportunities and threats at a faster pace, constantly adapting to new ways of creating and consuming IT services: they need to enable scalable businesses, fast entry in new markets and agile and innovative services as part of their strategic goals.

Cloud is significantly changing the IT paradigm and the adoption of new architectures (microservices) and technologies (containers, edge computing, AI) will transform enterprise IT services. These are the enablers of new ways to develop, test and deploy application services components, which promote the re-use of those components by isolating them and abstracting their dependencies from the underneath OS and infrastructure.

Docker technology and its orchestration capabilities play the main role in creating Container as a Service or CaaS, while Infrastructure as a service (IaaS) provides raw assets with high flexibility and Platform as a service (PaaS) offers an optimized set of components or solutions that can be used for use cases where the development environment dictates the rules.

CaaS can be seen as an element between IaaS and PaaS, which integrates them: driving CaaS adoption in the enterprise world requires the introduction of several functionalities to deliver mission critical IT services and to guarantee a high level of quality to sustain the business needs.

Docker is an open source software (as well as the brand of the company that today owns the commercial rights of it) that adds key functionalities on top of OS containers and can be defined as a platform for developers and system administrators to encapsulate application components in a container with all the related dependencies, exploiting the technology provided by the Linux kernel in terms of isolation and virtualization of resources at the OS level.

The “philosophy” of Docker is to build, ship and run any application, anywhere a Docker service is installed in the hosting Operating System. The Docker platform is composed of several elements, which are used together and serve a specific role:

  • Docker Engine: is a lightweight runtime engine providing a rich set of functions to build, ship and run application components encapsulated in containers. The in-host daemon communicates with the Docker client to execute commands to perform all the required operations. Docker Engine is one of the most rapidly growing open source projects, and the software is available as an open source download or with a commercial support subscription.
  • Docker Machine: in order to run Docker it is necessary to have the Docker Engine installed on one or more hosts (Docker nodes), and this is the role of the Docker Machine. It automatically sets up the Docker Engine with a compute resource provisioned from the supported infrastructure provider (using Docker Machine drivers) and then configures the Docker client to talk to the Docker Engines.
  • Docker Swarm: provides native clustering capabilities to turn a group of Docker engines into a single, virtual Docker Engine. With these pooled resources, it is possible to scale out any application as though it was running on a single, huge computer.
  • Docker Image: is an ordered collection of root filesystem changes and the corresponding execution parameters for use within a container runtime. Basically the Docker Image is the content of a running Container. Images are composed by layers, each containing a change applied to the overall image over the time.
  • Docker Container: is a running instance of a Docker Image (the selected layer is usually the topmost one).
  • Docker Trusted Registry: provides the functionality to store and manage Docker Images and to support security or regulatory compliance requirements.
  • Docker Compose: provides the capability to define a multi-container application (micro-services based) with all of its dependencies and then spin it up using a single command. The applications structure and configuration are held in a single file, allowing a truly Infrastructure as Code implementation paradigm.
  • Docker Universal Control Plane: offers an on-premises management solution for Docker apps – regardless of where they run.

Docker Enterprise as a Service (DEaaS), operated by Capgemini, is a containerized runtime environment supporting microservices, monoliths, synchronous, asynchronous and batch integrations, as well as cloud native applications. It uses a trusted registry to securely store and manage container images and it allows organizations to administer, partition and monitor their container cluster and applications.

DEaaS is GDPR compliant, secure, fully automated and cloud agnostic, enabling a choice of cloud providers and multi-cloud and hybrid strategies. Each customer has its own dedicated PaaS assuring data isolation, and it is also possible to include a variety of DevOps tools with DEaaS to create a complete solution for building in the cloud:

  • Build: Docker Desktop, Crowd, Bitbucket, Jira, Confluence
  • Test: SonarQube, Selenium
  • Deliver: Nexus, Bamboo/Jenkins/GoCD
  • Operations: Jira Service Desk, Rundeck, Kibana, ElasticSearch, Grafana, Prometheus
To find out more about more about how you can build your business in the cloud with Capgemini Cloud Platform (CCP) and DEaaS don’t hesitate to get in touch with me.

Post correlati


The Rise of Containers in Enterprise IT

Krishnan Narayan
Date icon luglio 19, 2019

The rise of application containers on enterprise roadmaps is changing the way IT services are...