Patterns in Docker Compose Multi-Container Orchestration

05/18/2023
by   Kalvin Eng, et al.
0

Software design patterns present general code solutions to common software design problems. Modern software systems rely heavily on containers for organizing and orchestrating their constituent service components. Yet, despite the prevalence of ready-to-use Docker service images ready to participate in multi-container orchestration, developers do not have much guidance on how to develop their own multi-container Docker orchestrations. Thus in this work, we curate a dataset of successful projects that employ Docker Compose as an orchestration tool; then, we engage in qualitative and quantitative analysis of Docker Compose configurations. The collection of data and analysis enables the identification and naming of repeating patterns of deployment and orchestration employed by numerous successful open-source projects, much like software design patterns. These patterns highlight how software systems are orchestrated in the wild and can give examples to anybody wishing to develop their container orchestrations. These contributions also advance empirical research in software engineering patterns as evidence is provided about how Docker Compose is used.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
03/24/2020

A Systematic Mapping of Software Engineering Challenges: GHTorrent Case

Git is used as the distributed version control system for many open-sour...
research
06/04/2019

Identification and Assessment of Software Design Pattern Violations

The validation of design pattern implementations to identify pattern vio...
research
09/07/2019

A curated Dataset of Microservices-Based Systems

Microservices based architectures are based on a set of modular, indepen...
research
08/19/2020

ConfEx: A Framework for Automating Text-based Software Configuration Analysis in the Cloud

Modern cloud services have complex architectures, often comprising many ...
research
06/18/2023

An Empirical Study of Untangling Patterns of Two-Class Dependency Cycles

Dependency cycles pose a significant challenge to software quality and m...
research
10/06/2011

Discovering patterns of correlation and similarities in software project data with the Circos visualization tool

Software cost estimation based on multivariate data from completed proje...
research
11/24/2022

Software Architecture and System Design of Rubin Observatory

Starting from a description of the Rubin Observatory Data Management Sys...

Please sign up or login with your details

Forgot password? Click here to reset