CN113849265A - 一种Docker镜像自动发布方法及系统 - Google Patents
一种Docker镜像自动发布方法及系统 Download PDFInfo
- Publication number
- CN113849265A CN113849265A CN202110865353.8A CN202110865353A CN113849265A CN 113849265 A CN113849265 A CN 113849265A CN 202110865353 A CN202110865353 A CN 202110865353A CN 113849265 A CN113849265 A CN 113849265A
- Authority
- CN
- China
- Prior art keywords
- mirror image
- application package
- service file
- docker
- image service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 239000012634 fragment Substances 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 11
- XXRKRPJUCVNNCH-AMFJOBICSA-N 4-[[(2S,3S)-1-amino-3-[(2S,3R,4S,5R)-5-(aminomethyl)-3,4-dihydroxyoxolan-2-yl]oxy-3-[(2S,3S,4R,5R)-5-(2,4-dioxopyrimidin-1-yl)-3,4-dihydroxyoxolan-2-yl]-1-oxopropan-2-yl]amino]-N-[[4-[4-[4-(trifluoromethoxy)phenoxy]piperidin-1-yl]phenyl]methyl]butanamide Chemical compound NC[C@H]([C@H]([C@H]1O)O)O[C@H]1O[C@@H]([C@@H](C(N)=O)NCCCC(NCC(C=C1)=CC=C1N(CC1)CCC1OC(C=C1)=CC=C1OC(F)(F)F)=O)[C@H]([C@H]([C@H]1O)O)O[C@H]1N(C=CC(N1)=O)C1=O XXRKRPJUCVNNCH-AMFJOBICSA-N 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 9
- 238000012546 transfer Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000006837 decompression Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 244000035744 Hura crepitans Species 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/084—Configuration by using pre-existing information, e.g. using templates or copying from other elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0876—Aspects of the degree of configuration automation
- H04L41/0886—Fully automatic configuration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种Docker镜像自动发布方法及系统,包括:支持应用包上传至镜像存储服务器的指定存储目录;扫描指定存储目录获取新增应用包信息,获取镜像服务文件应用包;基于新增应用包信息,调用边缘计算平台的Restful接口,将镜像服务文件应用包上传至边缘计算平台。还包括:接收镜像更新通知,获取新增的镜像服务文件应用包信息;根据镜像服务文件应用包信息,基于预设下载模式下载镜像服务文件应用包;解析镜像服务文件应用包,获得镜像服务文件配置数据,将Docker镜像下发边缘计算网关。本发明能够实现镜像自动获取、自动解析和选择性部署到边缘节点等操作,提高了边缘节点镜像部署自动化水平,避免了人工误操作。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种Docker镜像自动发布方法及系统。
背景技术
随着云计算技术的发展,大大降低了IT基础设施的使用成本。但是,云数据中心带来的资源集中化也存在一些不足,资源集中化后,终端用户到数据中心相距较远,长距离的网络传输不仅占用大量网络资源,而且其带来的高时延减慢用户请求的相应速度,影响用户体验。边缘计算将原先集中在数据中心的计算能力,分发到网络边缘,在网络边缘进行数据处理。
Docker是dotCloud开源的一个基于LXC(Linux Container)的轻量级容器虚拟化引擎,容器执行采用沙箱机制,每个容器之间存在系统隔离,相互之间不存在接口。轻量级虚拟化机制相对于VMware、KVM(Kernel-based Virtual Machine)等完全虚拟化技术而言,Docker容器启动速度快,系统额外占用少,同样一台服务器可以启动的Docker容器数量远大于启动的虚拟机数量。同时Docker还对镜像存储进行了优化,Docker镜像保存着容器运行所需的运行环境及配置信息,镜像来自于仓库,并且采用分层存储的文件系统,提高复用性。
目前常用的Docker镜像发布方式为:系统管理员将开发、测试完成的Docker镜像文件通过应用导入模块导入到边缘计算平台,并设置告警配置和用户权限信息;然后编写配置(编排)信息,选择边缘节点并部署Docker镜像到边缘节点。上述操作可能会存在如下缺陷:1.系统管理员需具备容器技术基础,特别是需具体容器配置(编排)相关技术;2.系统管理需要清楚Docker镜像的告警配置、用户权限等信息,而且随着Docker镜像数量的增加此问题会越发严重;3.有些Docker镜像文件较大,而且边缘节点网络带宽较小时,存在下载时间较长、失败几率增大等问题。
发明内容
本发明提供一种Docker镜像自动发布方法及系统,用以解决现有技术中无法实现镜像自动发布,且依赖于人工操作的缺陷。
第一方面,本发明提供一种Docker镜像自动发布方法,包括:
支持应用包上传至镜像存储服务器的指定存储目录;
扫描所述指定存储目录获取新增应用包信息,获取镜像服务文件应用包;
基于所述新增应用包信息,调用边缘计算平台的Restful接口,将所述镜像服务文件应用包上传至所述边缘计算平台。
在一个实施例中,所述扫描所述指定存储目录获取新增应用包信息,获取镜像服务文件应用包,包括:
对所述指定存储目录进行周期性扫描,若获取到新增的镜像服务文件应用包,则发送镜像更新通知至所述边缘计算平台。
第二方面,本发明提供一种Docker镜像自动发布方法,包括:
接收镜像更新通知,获取新增的镜像服务文件应用包信息;
根据所述镜像服务文件应用包信息,基于预设下载模式下载镜像服务文件应用包;
解析所述镜像服务文件应用包,获得镜像服务文件配置数据,将Docker镜像下发边缘计算网关。
在一个实施例中,所述根据所述镜像服务文件应用包信息,基于预设下载模式下载镜像服务文件应用包,包括:
在预设时间段内,使用文件分片断点下载模式下载所述镜像服务文件应用包,其中所述预设时间段由系统管理员设置,或由各普通管理员设置。
在一个实施例中,所述解析所述镜像服务文件应用包,获得镜像服务文件配置数据,包括:
解析APPD.mf文件,对所述镜像服务文件应用包进行完整性和安全性检查,获取被授权使用的用户组信息;
将应用配置文件和告警配置导入到用户组的应用模板、配置管理和告警规则中;
将应用镜像文件推送至应用授权的用户组镜像仓库。
在一个实施例中,所述将Docker镜像下发边缘计算网关,包括:
将用户创建的镜像部署任务下发至所述边缘计算网关;
所述边缘计算网关在指定任务时间段使用文件分片断点下载模式从所述用户组镜像仓库拉取应用镜像;
待所述应用镜像导入完成,执行应用部署过程。
第三方面,本发明还提供一种Docker镜像自动发布系统,包括:
支持模块,用于支持应用包上传至确定镜像存储服务器的指定存储目录;
扫描模块,用于扫描所述存储目录获取新增应用包信息,获取镜像服务文件应用包;
传递模块,用于基于所述新增应用包信息,调用边缘计算平台的Restful接口,将所述镜像服务文件应用包上传至所述边缘计算平台。
第四方面,本发明还提供一种Docker镜像自动发布系统,包括:
接收模块,用于接收镜像更新通知,获取新增的镜像服务文件应用包信息;
下载模块,用于根据所述镜像服务文件应用包信息,基于预设下载模式下载镜像服务文件应用包;
解析模块,用于解析所述镜像服务文件应用包,获得镜像服务文件配置数据,将Docker镜像下发边缘计算网关。
第五方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述Docker镜像自动发布方法的步骤。
第六方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述Docker镜像自动发布方法的步骤。
本发明提供的Docker镜像自动发布方法及系统,能够实现镜像自动获取、自动解析和选择性部署到边缘节点等操作,提高了边缘节点镜像部署自动化水平,避免了人工误操作。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的Docker镜像自动发布方法的流程示意图之一;
图2是本发明提供的Docker镜像自动发布的架构图;
图3是本发明提供的应用包格式示意图;
图4是本发明提供的Docker镜像自动发布方法的流程示意图之二;
图5是本发明提供的Docker镜像自动发布的时序图;
图6是本发明提供的Docker镜像自动发布系统的结构示意图之一;
图7是本发明提供的Docker镜像自动发布系统的结构示意图之二;
图8是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明针对现有技术存在的问题,提出一种新的Docker镜像自动发布方法,从镜像文件生成的实际考虑,弥补了Docker镜像发布、配置、部署到边缘节点的技术缺陷。
图1是本发明提供的Docker镜像自动发布方法的流程示意图之一,如图1所示,对应的执行主体是镜像存储服务器,包括:
101,支持应用包上传至镜像存储服务器的指定存储目录;
102,扫描所述指定存储目录获取新增应用包信息,获取镜像服务文件应用包;
103,基于所述新增应用包信息,调用边缘计算平台的Restful接口,将所述镜像服务文件应用包上传至所述边缘计算平台。
具体地,如图2所示,本发明所提出的Docker镜像自动发布方法,包括三大模块:镜像存储服务器、边缘计算平台和边缘计算网关。
首先是镜像存储服务器收到根据需要发布的镜像文件制作的应用包,存储在固定目录中,由镜像存储服务器中Agent代理程序周期性地对固定目录进行扫描,获得镜像更新通知,将该镜像更新通知发送至边缘计算平台,边缘计算平台在指定时段内对制作的应用包进行分片下载,进一步由其中的镜像服务对应用包进行解压和解析,并导入相应配置,再由应用管理服务对远端的边缘计算网关进行应用部署任务,该边缘计算网管在任务时段内下载镜像,最后将该镜像加载到本地并执行。此处,镜像存储服务器和边缘计算网关之间的接口为Restful接口。
需要说明的是,本发明的应用包为为zip格式,如pkt-nginx-1.19.0.zip,解压后目录结构如图3所示。
Pkt-nginx-1.19.0(文件夹)结构包括如下:
----APPD(文件夹):保存应用编排文件(标准k8s yaml文件)、告警规则文件
----APPD.yaml(文件):标准k8s编排文件,可选
----alarmRlue.json:告警规则(以及其他平台支持平台导入的文件)可选
说明:此文件夹内文件较多时可压缩为APPD.zip
----Files(文件夹)
----ChangeLog.txt(文件):版本说明文件,可选
----Images(文件夹)
----nginx-1.19.0.tar(文件):容器镜像文件,必选
----swImageDesc.json(文件):镜像描述文件,可选
----APP.mf(文件):应用包清单文件,必选
本发明实现镜像自动获取、自动解析和选择性部署到边缘节点等操作,提高了边缘节点镜像部署自动化水平,避免了人工误操作。
基于上述实施例,所述扫描所述存储目录获取新增应用包信息,获取镜像服务文件应用包,包括:
对所述指定存储目录进行周期性扫描,若获取到新增的镜像服务文件应用包,则发送镜像更新通知至所述边缘计算平台。
具体地,在将镜像及其相关配置文件制作为应用包,并将应用包上传到镜像包存储服务器的固定目录下之后,镜像存储服务器上的Agent代理程序,会周期性地扫描镜像包存储服务器的固定目录,以监测是否有新增的应用包。
Agent代理程序扫描到有新增的应用包时,会通过调用边缘计算平台提供的Restful接口通知边缘计算平台有新增镜像,同时将新增应用包文件信息通过接口传给边缘计算平台。
本发明的镜像存储服务器通过Agent代理程序监测获得更新的应用包信息,能快速获得文件更新信息,实现快速发布镜像文件的功能。
图4是本发明提供的Docker镜像自动发布方法的流程示意图之二,如图4所示,对应的执行主体为边缘计算平台,包括:
201,接收镜像更新通知,获取新增的镜像服务文件应用包信息;
202,根据所述镜像服务文件应用包信息,基于预设下载模式下载镜像服务文件应用包;
203,解析所述镜像服务文件应用包,获得镜像服务文件配置数据,将Docker镜像下发边缘计算网关。
具体地,如图5的时序图所示,镜像存储服务器收到根据需要发布的镜像文件制作的应用包,存储在固定目录中,由镜像存储服务器中Agent代理程序周期性地对固定目录进行扫描,获得镜像更新通知,将该镜像更新通知发送至边缘计算平台,边缘计算平台在指定时段内对制作的应用包进行分片下载,进一步由其中的镜像服务对应用包进行解压和解析,并导入相应配置,再由应用管理服务对远端的边缘计算网关进行应用部署任务,该边缘计算网管在任务时段内下载镜像,最后将该镜像加载到本地并执行。
本发明实现镜像自动获取、自动解析和选择性部署到边缘节点等操作,提高了边缘节点镜像部署自动化水平,避免了人工误操作。
基于上述实施例,所述根据所述镜像服务文件应用包信息,基于预设下载模式下载镜像服务文件应用包,包括:
在预设时间段内,使用文件分片断点下载模式下载所述镜像服务文件应用包,其中所述预设时间段由系统管理员设置,或由各普通管理员设置。
具体地,边缘计算平台在设置的时段内使用文件分片断点下载技术下载应用包到边缘计算平台;边缘计算平台设置的时段可以是由系统管理员设置平台统一的时段,也可以是各普通管理员根据自身实际情况设置时段;边缘计算平台下载应用包文件时,如果应用包文件较大,在一个时段无法完成下载,则可以在下个时段断点续传,直到应用包完整下载到边缘计算平台。
此处,分片断点下载技术特别适用于在网络带宽不稳定情况下进行大文件传输。HTTP分片断点下载的实现基于HTTP中Range请求头。Range是一个HTTP请求头,它负责告知服务器要返回文件的哪个区间范围(字节)的数据。
在Range中,可以一次性请求多个部分,服务器会以multipart文件的形式将其返回。如果服务器返回的是范围响应,需要使用206Partial Content状态码。假如所请求的范围不合法,那么服务器会返回416 Range Not Satisfiable状态码,表示客户端错误。服务器允许忽略Range头,从而返回整个文件。
Range规范包括:
Range:<unit>=<range-start>-
Range:<unit>=<range-start>-<range-end>
Range:<unit>=<range-start>-<range-end>,<range-start>-<range-end>
Range:<unit>=<range-start>-<range-end>,<range-start>-<range-end>,<range-start>-<range-end>
<unit>:范围所采用的单位,通常是字节(bytes)
<range-start>:一个整数,表示在特定单位下,范围的起始值
<range-end>:一个整数,表示在特定单位下,范围的结束值。这个值是可选的,如果不存在,表示此范围一直延伸到文档结束。
本发明的边缘计算平台在下载镜像文件时,采用文件分片断点下载模式,确保了文件能安全完整地进行下载,实现后续文件发布的完整性。
基于上述任一实施例,所述解析所述镜像服务文件应用包,获得镜像服务文件配置数据,包括:
解析APPD.mf文件,对所述镜像服务文件应用包进行完整性和安全性检查,获取被授权使用的用户组信息;
将应用配置文件和告警配置导入到用户组的应用模板、配置管理和告警规则中;
将应用镜像文件推送至应用授权的用户组镜像仓库。
具体地,边缘计算平台解压其在设置的时段内使用文件分片断点下载技术下载的应用包,然后进行解析,解析详细过程包括:
1)完整性检查:解析应用包中的APPD.mf清单文件,比较清单文件中的文件列表与解压后的文件,若完整则继续否则终止;
2)安全性检查:计算解压后应用包中各文件校验和,并与APPD.mf中文件校验和进行比较,都一致则通过安全检查,否则终止;
3)解析应用包中APPD.mf文件,获取被授权使用的用户组(metadata.licensee)信息;
4)将应用配置文件、告警配置导入到步骤3)所述用户组的应用模板、配置管理、告警规则功能中;
5)将应用镜像文件push到应用授权的用户组镜像仓库。
需要说明的是,本发明涉及的主要文件包括:
1)APPD.mf
边缘计算平台通过解析APP.mf文件获取到应用名称、版本、提供方、授权使用的用户组等信息,并通过此文件中source字段列举的文件名与实际解压目录中的文件做对比实现完整性检查,通过计算各个文件的校验和并与文件中Hash字段比较,实现安全行检查。
APPD.mf文件内容示例如下:
2)swImageDesc.json
swImageDesc.json文件用来对镜像文件进行描述,所需内容根据实际需求定义,以下为示例:
3)APPD.yaml
APPD.yaml文件是k8s标准编排文件,可作为应用模板导入到边缘计算平台应用模板功能中。示例如下:
本发明通过解析过程中的完整性和安全性检查,确保发布的镜像文件数据包的完整和安全。
基于上述任一实施例,所述将Docker镜像下发边缘计算网关,包括:
将用户创建的镜像部署任务下发至所述边缘计算网关;
所述边缘计算网关在指定任务时间段使用文件分片断点下载模式从所述用户组镜像仓库拉取应用镜像;
待所述应用镜像导入完成,执行应用部署过程。
具体地,本发明中边缘计算平台下发应用到边缘计算网关的过程包括:
用户在边缘计算平台上选择镜像、创建应用模板、创建应用部署任务,设置镜像下发时间段,并将创建成功的部署任务下发到边缘计算网关上的边缘应用管理服务;
边缘计算网关上的边缘应用管理服务会在任务指定的时段内使用分片断点下载技术从用户组镜像仓库中拉取应用镜像;
边缘应用管理服务步骤中所述下载的镜像导入到本地,并立即执行应用部署过程。
下面对本发明提供的Docker镜像自动发布系统进行描述,下文描述的Docker镜像自动发布系统与上文描述的Docker镜像自动发布方法可相互对应参照。
图6是本发明提供的Docker镜像自动发布系统的结构示意图之一,如图6所示,包括:支持模块61、扫描模块62和传递模块63,其中:
支持模块61用于支持应用包上传至镜像存储服务器的指定存储目录;扫描模块62用于扫描所述存储目录获取新增应用包信息,获取镜像服务文件应用包;传递模块63用于基于所述新增应用包信息,调用边缘计算平台的Restful接口,将所述镜像服务文件应用包上传至所述边缘计算平台。
图7是本发明提供的Docker镜像自动发布系统的结构示意图之二,如图7所示,包括:接收模块71、下载模块72和解析模块73,其中:
接收模块71用于接收镜像更新通知,获取新增的镜像服务文件应用包信息;下载模块72用于根据所述镜像服务文件应用包信息,基于预设下载模式下载镜像服务文件应用包;解析模块73用于解析所述镜像服务文件应用包,获得镜像服务文件配置数据,将Docker镜像下发边缘计算网关。
本发明实现镜像自动获取、自动解析和选择性部署到边缘节点等操作,提高了边缘节点镜像部署自动化水平,避免了人工误操作。
图8示例了一种电子设备的实体结构示意图,如图8所示,该电子设备可以包括:处理器(processor)810、通信接口(Communications Interface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行Docker镜像自动发布方法,该方法包括:支持应用包上传至镜像存储服务器的存储目录;扫描指定存储目录获取新增应用包信息,获取镜像服务文件应用包;基于新增应用包信息,调用边缘计算平台的Restful接口,将镜像服务文件应用包上传至边缘计算平台。还包括:接收镜像更新通知,获取新增的镜像服务文件应用包信息;根据镜像服务文件应用包信息,基于预设下载模式下载镜像服务文件应用包;解析镜像服务文件应用包,获得镜像服务文件配置数据,将Docker镜像下发边缘计算网关。
此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的Docker镜像自动发布方法,该方法包括:支持应用包上传至镜像存储服务器的指定存储目录;扫描指定存储目录获取新增应用包信息,获取镜像服务文件应用包;基于新增应用包信息,调用边缘计算平台的Restful接口,将镜像服务文件应用包上传至边缘计算平台。还包括:接收镜像更新通知,获取新增的镜像服务文件应用包信息;根据镜像服务文件应用包信息,基于预设下载模式下载镜像服务文件应用包;解析镜像服务文件应用包,获得镜像服务文件配置数据,将Docker镜像下发边缘计算网关。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的Docker镜像自动发布方法,该方法包括:支持应用包上传至镜像存储服务器的指定存储目录;扫描指定存储目录获取新增应用包信息,获取镜像服务文件应用包;基于新增应用包信息,调用边缘计算平台的Restful接口,将镜像服务文件应用包上传至边缘计算平台。还包括:接收镜像更新通知,获取新增的镜像服务文件应用包信息;根据镜像服务文件应用包信息,基于预设下载模式下载镜像服务文件应用包;解析镜像服务文件应用包,获得镜像服务文件配置数据,将Docker镜像下发边缘计算网关。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种Docker镜像自动发布方法,其特征在于,包括:
支持应用包上传至镜像存储服务器的指定存储目录;
扫描所述指定存储目录获取新增应用包信息,获取镜像服务文件应用包;
基于所述新增应用包信息,调用边缘计算平台的Restful接口,将所述镜像服务文件应用包上传至所述边缘计算平台。
2.根据权利要求1所述的Docker镜像自动发布方法,其特征在于,所述扫描所述指定存储目录获取新增应用包信息,获取镜像服务文件应用包,包括:
对所述指定存储目录进行周期性扫描,若获取到新增的镜像服务文件应用包,则发送镜像更新通知至所述边缘计算平台。
3.一种Docker镜像自动发布方法,其特征在于,包括:
接收镜像更新通知,获取新增的镜像服务文件应用包信息;
根据所述镜像服务文件应用包信息,基于预设下载模式下载镜像服务文件应用包;
解析所述镜像服务文件应用包,获得镜像服务文件配置数据,将Docker镜像下发边缘计算网关。
4.根据权利要求3所述的Docker镜像自动发布方法,其特征在于,所述根据所述镜像服务文件应用包信息,基于预设下载模式下载镜像服务文件应用包,包括:
在预设时间段内,使用文件分片断点下载模式下载所述镜像服务文件应用包,其中所述预设时间段由系统管理员设置,或由各普通管理员设置。
5.根据权利要求3所述的Docker镜像自动发布方法,其特征在于,所述解析所述镜像服务文件应用包,获得镜像服务文件配置数据,包括:
解析APPD.mf文件,对所述镜像服务文件应用包进行完整性和安全性检查,获取被授权使用的用户组信息;
将应用配置文件和告警配置导入到用户组的应用模板、配置管理和告警规则中;
将应用镜像文件推送至应用授权的用户组镜像仓库。
6.根据权利要求5所述的Docker镜像自动发布方法,其特征在于,所述将Docker镜像下发边缘计算网关,包括:
将用户创建的镜像部署任务下发至所述边缘计算网关;
所述边缘计算网关在指定任务时间段使用文件分片断点下载模式从所述用户组镜像仓库拉取应用镜像;
待所述应用镜像导入完成,执行应用部署过程。
7.一种Docker镜像自动发布系统,其特征在于,包括:
支持模块,用于支持应用包上传至镜像存储服务器的指定存储目录;
扫描模块,用于扫描所述存储目录获取新增应用包信息,获取镜像服务文件应用包;
传递模块,用于基于所述新增应用包信息,调用边缘计算平台的Restful接口,将所述镜像服务文件应用包上传至所述边缘计算平台。
8.一种Docker镜像自动发布系统,其特征在于,包括:
接收模块,用于接收镜像更新通知,获取新增的镜像服务文件应用包信息;
下载模块,用于根据所述镜像服务文件应用包信息,基于预设下载模式下载镜像服务文件应用包;
解析模块,用于解析所述镜像服务文件应用包,获得镜像服务文件配置数据,将Docker镜像下发边缘计算网关。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述Docker镜像自动发布方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述Docker镜像自动发布方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110865353.8A CN113849265A (zh) | 2021-07-29 | 2021-07-29 | 一种Docker镜像自动发布方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110865353.8A CN113849265A (zh) | 2021-07-29 | 2021-07-29 | 一种Docker镜像自动发布方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113849265A true CN113849265A (zh) | 2021-12-28 |
Family
ID=78975269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110865353.8A Pending CN113849265A (zh) | 2021-07-29 | 2021-07-29 | 一种Docker镜像自动发布方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113849265A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115277728A (zh) * | 2022-07-01 | 2022-11-01 | 阳光电源股份有限公司 | 一种模型文件的下发方法、系统及云服务器 |
-
2021
- 2021-07-29 CN CN202110865353.8A patent/CN113849265A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115277728A (zh) * | 2022-07-01 | 2022-11-01 | 阳光电源股份有限公司 | 一种模型文件的下发方法、系统及云服务器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109525624B (zh) | 一种容器登录方法、装置及存储介质 | |
CN109120678B (zh) | 用于分布式存储系统的服务托管的方法和装置 | |
CN108566290B (zh) | 服务配置管理方法、系统、存储介质和服务器 | |
CN106844137B (zh) | 服务器的监控方法和装置 | |
EP2682863B1 (en) | Installing applications remotely | |
US8375383B2 (en) | Rolling upgrades in distributed applications | |
CN111400777B (zh) | 一种网络存储系统、用户认证方法、装置及设备 | |
US10303463B2 (en) | Terminal management framework and terminal management method | |
CN109104368B (zh) | 一种请求连接方法、装置、服务器及计算机可读存储介质 | |
CN112613041A (zh) | 容器镜像检测方法和装置、电子设备、存储介质 | |
CN112860282B (zh) | 集群插件的升级方法、装置和服务器 | |
CN112398673A (zh) | 一种升级方法、通信设备以及计算机可读存储介质 | |
US11853100B2 (en) | Automated delivery of cloud native application updates using one or more user-connection gateways | |
CN110166547B (zh) | 终端远程访问控制方法 | |
CN113687858B (zh) | 配置文件的检查方法、装置、电子设备及存储介质 | |
CN111580833A (zh) | 应用更新方法和系统、本地管理代理装置和云端服务器 | |
CN116301951B (zh) | 一种基于kubernetes的微服务应用安装升级方法及装置 | |
CN115576599A (zh) | 软件开发的配置方法、系统和计算机设备 | |
CN114024951A (zh) | 一种基于云边协同的电力边缘异构部署方法 | |
CN113849265A (zh) | 一种Docker镜像自动发布方法及系统 | |
CN113949700A (zh) | 基于云边协同的Docker应用加速下发方法及系统 | |
CN111158716B (zh) | 版本升级调用方法、装置、计算机系统及可读存储介质 | |
US20230289165A1 (en) | Data processing method and apparatus for application, device, and storage medium | |
CN104348646A (zh) | 配置数据处理方法、装置及系统 | |
CN111596933B (zh) | 文件处理方法、装置、电子设备及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |