ASE docker related research

2024-05-10 16:36
文章标签 docker ase research related

本文主要是介绍ASE docker related research,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

ASE 2022 

Understanding and Predicting Docker Build Duration: An Empirical Study of Containerized Workflow of OSS Projects

理解和预测 Docker 构建持续时间:OSS 项目容器化工作流程的实证研究

Docker 构建是容器化工作流程的关键组成部分,它自动执行将源打包并转换为容器映像的过程。如果运行不正常,Docker 构建会带来较长的持续时间(即构建缓慢),从而增加人力和计算资源的成本,从而不可避免地影响软件开发。然而,Docker 构建持续时间成本的现状和补救措施仍不清楚,需要深入研究。为了填补这一空白,本文对 5,833 个开源软件 (OSS) 项目的 171,439 个 Docker 构建进行了首次实证调查。从探索性研究开始,可以在实际项目中描述 Docker 构建持续时间,并通过全面调查获得开发人员对缓慢构建的看法。在探索性研究结果的推动下,我们提出了 Docker 构建持续时间的预测模型,利用来自构建相关上下文和配置的 27 个手工特征以及 8 种回归算法来执行预测任务。我们的结果表明,随机森林模型提供了卓越的性能,Spearman 相关性为 0.781,在 RMSE、MAE 和 MAPE 方面分别优于基线随机模型 82.9%、90.6% 和 94.4%。这项研究的意义将促进研究并帮助从业者改进 Docker 构建过程。

ASE 2021 

Refactorings and Technical Debt in Docker Projects: An Empirical Study 

Docker 项目中的重构和技术债务:实证研究

软件容器,例如 Docker,最近被认为是提供可重用软件工件的主流技术。开发人员可以基于大量公开的可重用 Docker 镜像轻松构建和部署他们的应用程序。因此,当前业界的流行趋势是应用程序的容器化。然而,基于容器的项目会损害不同的组件,包括 Docker 和 Docker-compose 文件,以及组合不同容器并促进与它们交互的源代码的其他几个依赖项。与任何其他复杂系统类似,基于容器的项目很容易出现与不同工件相关的各种质量和技术债务问题:Docker 和 Docker-compose 文件以及常规源代码文件。不幸的是,在基于容器的项目如何实际发展和维护方面存在知识差距。在本文中,我们通过研究重构来解决上述差距,即在开源 Docker 项目中应用的重构,即在保留行为的同时进行结构变化,以及它们缓解的技术债务问题。我们分析了 68 个项目,其中包括 19.5 个 MLOC,以及 193 个手动检查的提交。结果表明,开发人员出于特定于容器的配置、组合和执行的各种原因重构这些 Docker 项目,与现有重构领域相比,导致出现了几种新的技术债务类别和重构类型。例如,减少 Dockerfile 镜像大小的重构、提高 Docker-compose 文件的可扩展性以及定期源代码重构等,主要与 Docker 和 Docker-compose 文件的演变有关。我们还分别引入了 24 个新的 Docker 特定重构和技术债务类别,并定义了不同的最佳实践。这项研究的意义将帮助从业者、工具构建者和教育工作者提高 Docker 项目的质量。

ASE 2018 

RUDSEA: recommending updates of Dockerfiles via software environment analysis

RUDSEA:通过软件环境分析推荐 Dockerfile 更新

Dockerfile是docker镜像的配置文件,它打包了软件的所有依赖项,以方便软件部署和移植。换句话说,dockerfiles 列出了软件应用程序构建和/或执行的所有环境假设,因此当环境假设在快速软件演进过程中发生变化时,它们需要经常更新。在本文中,我们提出了 RUDSEA,这是一种基于分析软件环境假设的变化及其影响向开发人员推荐 dockerfile 更新的新颖方法。我们对 1,199 个实际指令更新的评估表明,RUDSEA 可以为 78.5% 的更新推荐正确的更新位置,并为 44.1% 的更新推荐正确的代码更改。(新思想短论文)

这篇关于ASE docker related research的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/976975

相关文章

如何用Docker运行Django项目

本章教程,介绍如何用Docker创建一个Django,并运行能够访问。 一、拉取镜像 这里我们使用python3.11版本的docker镜像 docker pull python:3.11 二、运行容器 这里我们将容器内部的8080端口,映射到宿主机的80端口上。 docker run -itd --name python311 -p

禅道Docker安装包发布

禅道Docker安装包发布 大家好, 禅道Docker安装包发布。 一、下载地址 禅道开源版:   /dl/zentao/docker/docker_zentao.zip  备用下载地址:https://download.csdn.net/download/u013490585/16271485 数据库用户名: root,默认密码: 123456。运行时,可以设置 MYSQL_ROOT_P

828华为云征文|华为云Flexus X实例docker部署rancher并构建k8s集群

828华为云征文|华为云Flexus X实例docker部署rancher并构建k8s集群 华为云最近正在举办828 B2B企业节,Flexus X实例的促销力度非常大,特别适合那些对算力性能有高要求的小伙伴。如果你有自建MySQL、Redis、Nginx等服务的需求,一定不要错过这个机会。赶紧去看看吧! 什么是华为云Flexus X实例 华为云Flexus X实例云服务是新一代开箱即用、体

docker-compose安装和简单使用

本文介绍docker-compose的安装和使用 新版docker已经默认安装了docker-compose 可以使用docker-compose -v 查看docker-compose版本 如果没有的话可以使用以下命令直接安装 sudo curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-c

01 Docker概念和部署

目录 1.1 Docker 概述 1.1.1 Docker 的优势 1.1.2 镜像 1.1.3 容器 1.1.4 仓库 1.2 安装 Docker 1.2.1 配置和安装依赖环境 1.3镜像操作 1.3.1 搜索镜像 1.3.2 获取镜像 1.3.3 查看镜像 1.3.4 给镜像重命名 1.3.5 存储,载入镜像和删除镜像 1.4 Doecker容器操作 1.4

Windows与linux中docker的安装与使用

windos中安装使用docker 下载Docker_Desktop 安装包进入docker官网下载Docker_Desktop: https://www.docker.com/ 启用wsl 我们搜索“启用或关闭Windows功能”,打开后勾选适用于Linux的Windows 子系统 Docker_Desktop设置 出现Docker Engine stopped的解决

docker学习系列(四)制作基础的base项目镜像--jdk+tomcat

前面已经完成了docker的安装以及使用,现在我们要将自己的javaweb项目与docker结合 1.1准备jdk+tomcat软件 ​​我下载了apache-tomcat-7.0.68.tar.gz和jdk-7u79-linux-x64.tar.gz,存储于Linux机器的本地目录/usr/ect/wt/下(利用xshell上传)。利用linux命令 tar -zxvf apache-tom

docker学习系列(三)docker使用

紧接着之前的博客,这一篇主要写如何使用docker 系列1:docker简介:http://blog.csdn.net/u013469562/article/details/72864323 系列2: docker安装:http://blog.csdn.net/u013469562/article/details/72865167 一、docker镜像的获取 1.1搜索可用镜像

docker学习系列(二)docker安装

接着之前的博客http://blog.csdn.net/u013469562/article/details/72864323,今天写一下docker的安装和使用 1.1docker的安装前置需求 首先docker目前的版本已经到了v17.03 本文采用centos6.6版本安装docker,其他操作系统可以参考其他博客,首先docker对于centos的需求如下 C

docker学习系列(一)初识docker

在第一版本上线之后公司,我们决定将之前使用的开源api文档项目转移到本公司的服务器之上,之前用的是showdoc,showdoc利用的是php技术,作为java程序员表示需要快速部署php环境以及apach容器都需要时间,所以采用第二种方法,即利用docker进行快速部署(虽然学习成本也不比php少)。 一、docker简介 docker的官网是https://www.docker.com,