首页> 外文期刊>Empirical Software Engineering >A study of how Docker Compose is used to compose multi-component systems
【24h】

A study of how Docker Compose is used to compose multi-component systems

机译:如何使用Docker撰写如何构成多组件系统的研究

获取原文
获取原文并翻译 | 示例

摘要

Many modern software applications are composed of several components (e.g., a web application is composed of a web server component and a database component). Each of these components can be instantiated as a container from a Docker image. Each Docker image corresponds to a software package (e.g, Apache or MySQL) along with various configuration details. Such containerization simplifies, speeds up, and enables the systematic deployment and maintenance of components at scale. As a natural progression of Docker, applications are now using "Docker Compose" to compose multi-component (aka. multi-container) applications by specifying the various components and their relations - in turn simplifying the deployment and maintenance of complex multi-component applications. This paper reports on a study of 4,103 open-source Github projects that use Docker Compose. Our primary goal is to better understand how it is used in the wild. We observe that over a quarter (26.8%) of the studied projects use Docker Compose for single-component applications. The Docker Compose file for an application is infrequently updated with 30% of such files never changed. We also observe that most of the composed applications leverage basic Docker Compose options instead of using advanced options (e.g., just 4.3% of the multi-component applications use a security related option). While Docker Compose has evolved over the years (it is currently at version 3), applications rarely adopt the new versions and 2.4% of the studied projects downgraded to an earlier version due to platform and option compatibility issues. Our study highlights that while applications are using Docker Compose, they appear to be content with its basic options and earlier versions in many instances. Future studies are needed to better understand how to improve the uptake of the more advanced aspects of Docker Compose, if they are needed at all.
机译:许多现代软件应用程序由多个组件组成(例如,Web应用程序由Web服务器组件和数据库组件组成)。这些组件中的每一个可以将其作为容器从Docker图像实例化。每个Docker图像对应于软件包(例如,Apache或MySQL)以及各种配置详细信息。这种集装箱简化了,速度速度,并在规模上进行系统部署和维护组件。作为Docker的自然进展,应用程序现在使用“Docker Compose”来撰写多组件(AKA。多容器)应用程序,指定各种组件及其关系 - 反过来简化了复杂多组件应用的部署和维护。本文关于使用Docker组成的4,103个开源GitHub项目的研究报告。我们的主要目标是更好地了解它在野外用途。我们观察到,在四分之一(26.8%)的学习项目中使用Docker撰写单组件应用程序。用于应用程序的Docker撰写文件不经常更新,其中30%的此类文件从未更改过。我们还观察到大多数组成的应用程序利用基本Docker撰写选项而不是使用高级选项(例如,只有4.3%的多组件应用程序使用安全相关选项)。虽然Docker Compose已经在多年来发展(它目前在第3版),但由于平台和选项兼容性问题,应用程序很少采用新的版本和2.4%的研究项目下调到早期版本。我们的研究突出显示,虽然应用程序正在使用Docker撰写,但它们似乎是许多实例中的基本选项和早期版本的内容。如果需要,需要未来的研究以更好地了解如何改进Docker组成的更高级方面的吸收。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号