【技术实现步骤摘要】
本专利技术属于软件工程和容器虚拟化领域,具体涉及一种基于规则的dockerfile指令行级依赖关系提取方法。
技术介绍
1、dockerfile是由若干符合特定语法的指令行组成的文本类型配置文件。根据dockerfile可生成相应的容器镜像(image),并最终实例化为容器(container)。dockerfile中的指令行定义了镜像的内容、文件系统结构、运行环境、行为功能等各个方面。dockerfile的部分指令行间存在依赖关系,即指令行间遵守特定的偏序关系,违反指令行间依赖关系将导致镜像构建失败。因此精确提取dockerfile指令行间的依赖关系,可有效提高镜像构建成功率,进而为dockerfile依赖缺失的修复、dockerfile的自动生成等下游任务提供有力的支撑。
2、然而,当前并没有针对dockerfile指令行的依赖提取工具。其主要难点在于三个方面:首先,dockerfile各指令行格式不同,缺乏统一的特征信息抽取与表征方式;其次,dockerfile指令行文本提供信息有限,且指令行间包含大量隐式依赖关系,需
...【技术保护点】
1.一种基于规则的Dockerfile指令行级依赖关系提取方法,其特征在于,所述基于规则的Dockerfile指令行级依赖关系提取方法,包括:
2.根据权利要求1所述的基于规则的Dockerfile指令行级依赖关系提取方法,其特征在于,所述步骤1-2中,根据Dockerfile文件中保留的每个指令行中指令的类型对指令所对应的参数进行预处理,包括:
3.根据权利要求1所述的基于规则的Dockerfile指令行级依赖关系提取方法,其特征在于,所述步骤2-1中,提取指令名为ENV或ARG的初始特征向量中指令值字段的值,得到全局变量字典,包括:
...【技术特征摘要】
1.一种基于规则的dockerfile指令行级依赖关系提取方法,其特征在于,所述基于规则的dockerfile指令行级依赖关系提取方法,包括:
2.根据权利要求1所述的基于规则的dockerfile指令行级依赖关系提取方法,其特征在于,所述步骤1-2中,根据dockerfile文件中保留的每个指令行中指令的类型对指令所对应的参数进行预处理,包括:
3.根据权利要求1所述的基于规则的dockerfile指令行级依赖关系提取方法,其特征在于,所述步骤2-1中,提取指令名为env或arg的初始特征向量中指令值字段的值,得到全局变量字典,包括:
4.根据权利要求1所述的基于规则的dockerfile指令行级依赖关系提取方法,其特征在于,所述步骤2-2中,基于全局变量字典,更新其余初始特征向量中的指令值字段的值,得到去除参数后的特征向量列表,包括:
5.根据权利要求1所述的基于规则的dockerfile指令行级依赖关系提取方法,其特征在于,所述步骤2-3中,对去除参数后的特征向量列表进行全局语义扫描,按序更新所有去参数特征向量中所属用户字段和所在位置字段的值...
【专利技术属性】
技术研发人员:陈铁明,钟云锦,朱志凌,孔浩彬,宋琪杰,朱添田,吕明琪,顾国民,刘承威,
申请(专利权)人:浙江工业大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。