CN108897527A - 一种云计算中遥感图像处理的Docker镜像自动化动态构建方法 - Google Patents
一种云计算中遥感图像处理的Docker镜像自动化动态构建方法 Download PDFInfo
- Publication number
- CN108897527A CN108897527A CN201810488534.1A CN201810488534A CN108897527A CN 108897527 A CN108897527 A CN 108897527A CN 201810488534 A CN201810488534 A CN 201810488534A CN 108897527 A CN108897527 A CN 108897527A
- Authority
- CN
- China
- Prior art keywords
- docker
- file
- mirror image
- remote sensing
- image processing
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000004519 manufacturing process Methods 0.000 claims abstract description 60
- 238000003860 storage Methods 0.000 claims abstract description 26
- 238000004422 calculation algorithm Methods 0.000 claims description 30
- 238000009826 distribution Methods 0.000 claims description 11
- 230000003993 interaction Effects 0.000 claims description 3
- 238000001914 filtration Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 abstract description 2
- 230000000007 visual effect Effects 0.000 abstract description 2
- 238000005516 engineering process Methods 0.000 description 3
- 238000009434 installation Methods 0.000 description 3
- 238000002955 isolation Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
-
- 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
-
- 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/45575—Starting, stopping, suspending or resuming virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Facsimiles In General (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种面向云计算中遥感图像处理的Docker镜像自动化制作系统,属于遥感图像处理领域。本发明中,构建一个存储遥感图像处理专用镜像的nexus docker仓库,搭建一个存储遥感图像处理软件的http文件服务器,以及构建web网站,通过web网站提供一个制作遥感图像处理专用镜像的可视化向导。用户按步骤处理完页面信息后,后台将根据用户在遥感专用镜像制作向导中产生的相关信息,自动生成构建遥感专用镜像的docker file文件。然后使用docker build命令制作出镜像,使用docker push命令将制作出的镜像存放在镜像仓库中,分享给其它用户使用,实现用户可以在不同物理机上,以秒级的速度,快速启动所需遥感图像处理系统并处理他的遥感业务。
Description
技术领域
本发明涉及一种面向遥感图像处理的Docker镜像自动化制作系统,属于遥感图像处理领域。
背景技术
由于计算机CPU多核化的发展,为了充分利用计算机中的多核进行并行处理,在使用计算机处理遥感图像处理算法时,遥感图像处理人员通常希望将多个遥感图像处理算法同时运行在同一台计算机上。然而当前遥感专业处理软件普遍没有采用并行处理方法,因此基于这些遥感软件开发出来的遥感图像算法,运行在同一台计算机上时,会由于内存泄漏而造成相互干扰。硬件资源的隔离与虚拟机技术给上述问题提供了解决方案。当前,不对遥感算法改变,就可以将不同的遥感算法同时运行在一台计算机上的解决方法主要有虚拟机技术和Docker技术。Docker技术能实现应用系统层级的隔离,与虚拟机相比,它具有更轻量化、启动速度快以及资源利用率高等特点,因而自2013年以来得到了更迅猛的发展。遥感图像处理Docker镜像的制作,不仅要求镜像制作人员具有linux基础知识、熟悉dockerfile脚本制作的基本语法以及Docker的基础命令与配置知识,而且要求提供制作遥感图像处理Docker镜像的基础镜像。这对遥感图像专业处理开发人员来说,不仅学习门槛较高,而且经常面临到处寻找基础镜像,制作出的镜像没有一个用于其分享分布的遥感图像处理镜像仓库管理系统等问题,因而急需一个面向遥感图像处理的Docker镜像自动化制作系统。
发明内容
本发明为克服上述现有技术所述的至少一种缺陷,提供一种云计算中遥感图像处理的Docker镜像自动化动态构建方法,实现用户可以在不同物理机上,以秒级的速度,快速启动所需遥感图像处理系统并处理他的遥感业务。
为解决上述技术问题,本发明采用的技术方案是:一种云计算中遥感图像处理的Docker镜像自动化动态构建方法,其特征在于,包括有以下步骤:
S1:构建存储基础镜像和专用镜像的nexus docker仓库及制作Docker镜像的Docker制作系统,同时构建http文件服务器;
S2:构建一个前端web页面,让用户上传遥感图像处理所需要的遥感算法、遥感专用软件、遥感专用软件运行所依赖软件,并将这些文件使用远程存储方式存储到http文件服务器,并对这些文件进行分类存储,同时使用MySQL数据库表记录前端web页面用户输入的文件相关信息跟它们存放在http文件服务器的目录信息;
S3:通过镜像制作向导页面从nexus docker仓库中搜索出供用户选择的操作系统,并从Mysql数据库中读出S2中存储的前端web页面用户输入的文件相关信息跟它们存放在http文件服务器的目录信息,供用户选择遥感图像处理所需的遥感专用软件、遥感算法、遥感专用软件运行所依赖软件,并指定当前镜像的镜像名和标签;
S4:构建一个端口分配模块,该模块从MySQL数据库docker file文件描述表中查询已分配的端口号,使用hash方法给每个需要制作的镜像分配一个端口号;构建Docker file文件自动生成器,Docker file文件自动生成器根据用户前端提供的操作系统、遥感专用软件、遥感专用软件运行所依赖软件、遥感算法执行程序与端口号等信息制作docker镜像的docker file文件;
S5:使用远程文件存储方法,将dockerfile文件传送到http文件服务器的docker file存储目录下,在Mysql数据库中的docker file文件描述表中添加对应的新记录,用于存储docker file 文件对应的信息;
S6:用户在web前端触发镜像制作命令并传递给web后端,docker制作与推送处理使用java调用开源jsch框架提供的开源免费的jsch类的接口开源框架提供的开源免费的开源jsch框架提供的开源免费的jsch类的接口类接口,登陆到Docker制作系统,从MySQL数据库的dockerfile文件描述表中找到待制作镜像的http文件服务器存放docker file的路径,将docker file下载并执行docker build命令,在当前docker制作机器上进行镜像的制作,并将镜像制作过程产生的信息返回给web前端;
S7:web前端收到镜像制作信息并在浏览器中显示,用户根据制作结果信息判断镜像制作是否成功,若镜像制作成功则通知后端上传镜像,web后端接收到镜像上传命令后,docker制作与推送处理使用java调用开源jsch框架提供的开源免费的jsch类的接口开源框架提供的开源免费的开源jsch框架提供的开源免费的jsch类的接口类接口,登陆到Docker制作系统,执行docker push命令将本次制作出的镜像上传到镜像仓库。
本发明中,构建一个存储遥感图像处理专用镜像的nexus docker仓库,搭建一个存储遥感图像处理软件的http文件服务器,以及构建一个web网站,该web网站提供一个制作遥感图像处理专用镜像的可视化向导。当用户使用遥感专用镜像制作向导,按步骤一步步处理完页面信息后,后台将根据用户在遥感专用镜像制作向导中产生的相关信息,自动生成构建遥感专用镜像的docker file文件。然后使用docker build命令制作出镜像,然后使用docker push命令将制作出的镜像存放在镜像仓库中,分享给其它用户使用。
在一个实施方式中,在步骤S1中,部署ubuntu操作系统服务器;下载开源软件nexus系统并配置nexus-3.X远程镜像地址及访问端口;启动nexus以此构建出一个nexusdocker仓库。通过该方法步骤构建出nexus docker仓库,用于存储基础镜像和制作出的遥感图像处理专用镜像。
在一个实施方式中,在步骤S1中,制作Docker制作系统时,部署一台ubuntu操作系统的服务器;添加docker的APT仓库;增加docker APT仓库的新GPG密钥;更新APT软件包索引;安装Docker,在/etc/docker/daemon.json中配置搭建私有nexus docker仓库地址,使其能够访问本地私有nexus docker仓库。通过该方法步骤搭建用于制作遥感图像处理Docker镜像的Docker制作系统。
另外,在步骤S2中,远程文件系统存储器对遥感算法、遥感专用软件、遥感专用软件运行所依赖软件通过文件id号进行重命名及存储。本步骤中,以文件id号+遥感软件名做为新的文件名,将遥感软件传送到http文件服务器的遥感软件存储目录下,以文件id号+遥感算法名做为新的文件名,将遥感算法传送到http文件服务器的遥感算法存储目录下,以文件id号+遥感专用软件运行所依赖软件名做为新的文件名,将遥感专用软件运行所依赖软件传送到http文件服务器的遥感专用软件运行所依赖软件存储目录下。
在一个实施方式中,在步骤S3中,通过web服务端开发脚本读取nexus docker中所有的镜像名与标签并进行对比,过滤出操作系统镜像。
通过spring开源框架的控制层代码接收用户的操作系统搜索请求并把过滤出的操作系统镜像返回给用户;spring控制层代码从Mysql数据库表中读出文件信息,供用户选择遥感图像处理所需的遥感专用软件、遥感算法、遥感专用软件运行所依赖软件。实现从nexus docker仓库中搜索出可供用户选择的操作系统。
在一个实施方式中,在步骤S4中,通过spring控制层代码从MySQL数据库dockerfile文件描述表中查询已分配的端口号。
Docker file文件自动生成器根据语言要素,为各个要素列出一个用户可以填写的步骤编号,该编号代表了该语言要求在dockerfile中所处的步骤;根据docker file生成向导与用户页面交互结果,获得制作docker file的基础信息并形成docker file文件。
开发spring控制层代码从MySQL数据库docker file文件表中查询已分配的端口号,使用hash方法给每个需要制作的镜像分配一个端口号,并把该端口号返回给前端页面。
Docker file自动生成器根据docker file DSL语言的From、MAINTAINER 、RUN 、CMD、EXPOSE、ENV、ADD 、COPY、ENTRYPOINT、VOLUME、USER、WORKDIR、ONBUILD 的语言要素,给各个要素列出一个用户可以填写的步骤编号,该编号代表了该语言要求在dockerfile中所处的步骤。
在一个实施方式中,在步骤S5中,通过java调用开源开源jsch框架提供的开源免费的jsch类的接口框架提供的开源免费的jsch类接口,实现web服务器远程免密登陆http文件服务器,docker file 文件对应的信息包括docker file 文件id号,镜像名,镜像标签,分配的端口号及存放目录信息。
在一个实施方式中,在步骤S6中,开发spring控制层代码接收用户制作镜像命令,使用SpringJDBC读取MySQL数据库,从dockerfile文件描述表中找到待制作镜像的远程http文件服务器存放docker file的路径。
本发明与现有技术相比,具有以下特点:采用Dockerfile制作遥感图像处理镜像的方式,将以前的遥感图像安装、环境配置,遥感图像处理算法运行所需的环境组件信息,全部固化成为一个可执行流dockerfile文件,遥感人员不需要学习linux基本知识,也不需要掌握docker file构建镜像的知识,还能秒级启动一个新的遥感图像处理环境系统。
同时结合了docker容器的高资源利用性、资源之间的隔离性以及容器启动的快捷性,使用户不需要修改其已有的遥感算法,只需要在一台物理机上快速启动多个遥感图像docker镜像文件,就可以在一台物理机上构建出多个遥感图像处理环境,实现对遥感图像的并行计算处理,提高多核物理机的资源利用率。
附图说明
图1是本发明实施例中方法流程示意图。
具体实施方式
附图仅用于示例性说明,不能理解为对本发明的限制;为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。附图中描述位置关系仅用于示例性说明,不能理解为对本发明的限制。
实施例1:
本发明提供一种云计算中遥感图像处理的Docker镜像自动化动态构建方法,S1:构建存储基础镜像和专用镜像的nexus docker仓库及制作Docker镜像的Docker制作系统,同时构建http文件服务器;
S2:构建一个前端web页面,让用户上传遥感图像处理所需要的遥感算法、遥感专用软件、遥感专用软件运行所依赖软件,并将这些文件使用远程存储方式存储到http文件服务器,并对这些文件进行分类存储,同时使用MySQL数据库表记录前端web页面用户输入的文件相关信息跟它们存放在http文件服务器的目录信息;
S3:通过镜像制作向导页面从nexus docker仓库中搜索出供用户选择的操作系统,并从Mysql数据库中读出S2中存储的前端web页面用户输入的文件相关信息跟它们存放在http文件服务器的目录信息,供用户选择遥感图像处理所需的遥感专用软件、遥感算法、遥感专用软件运行所依赖软件,并指定当前镜像的镜像名和标签;
S4:构建一个端口分配模块,该模块从MySQL数据库docker file文件描述表中查询已分配的端口号,使用hash方法给每个需要制作的镜像分配一个端口号;构建Docker file文件自动生成器,Docker file文件自动生成器根据用户前端提供的操作系统、遥感专用软件、遥感专用软件运行所依赖软件、遥感算法执行程序与端口号等信息制作docker镜像的docker file文件;
S5:使用远程文件存取方法,将dockerfile文件传送到http文件服务器的docker file存储目录下,在Mysql数据库中的docker file文件表中添加对应的新记录,用于存储docker file 文件对应的信息;
S6:用户在web前端触发镜像制作命令并传递给web后端,docker制作与推送处理使用java调用开源jsch框架提供的开源免费的jsch类的接口,登陆到Docker制作系统,从MySQL数据库的dockerfile文件描述表中找到待制作镜像的http文件服务器存放docker file的路径,将docker file下载并执行docker build命令,在当前docker制作机器上进行镜像的制作,并将镜像制作过程产生的信息返回给web前端;
S7:web前端收到镜像制作信息并在浏览器中显示,用户根据制作结果信息判断镜像制作是否成功,若镜像制作成功则通过后端上传镜像,web后端接收到镜像上传命令后,docker制作与推送处理使用java调用开源jsch框架提供的开源免费的jsch类的接口类,登陆到Docker制作系统,执行docker push命令将本次制作出的镜像上传到镜像仓库。
在步骤S1中,部署一台ubuntu14.04操作系统的服务器;下载开源软件nexus-3.X系统做为nexus docker管理软件;解压nexus-3.X安装包;安装JDK1.8并配置;配置nexus-3.X远程镜像地址及访问端口;启动nexus-3.X以此构建出一个nexus docker仓库。
对于Docker制作系统,部署一台ubuntu16.04操作系统的服务器;添加Docker的APT仓库;增加Docker APT仓库的新GPG密钥;更新APT软件包索引;安装Docker;在/etc/docker/daemon.json中配置搭建的私有nexus docker仓库地址,使其能够访问本地私有nexus docker仓库。
对于http文件服务器,部署一台ubuntu16.04操作系统的服务器;使用apt-get 安装 apache2;安装完成,cd /etc/apache2/进入配置文件目录,修改配置;删除apache2http访问目录下的index.html文件;启动apache2。
在步骤S2中,用户上传遥感图像处理所需依赖遥感专用软件、遥感算法,并让用户填写文件描述、使用方法、配置信息的前端web页面,具体方法为:搭建一个spring MVC框架,开发前端web框架页面;在Web页面中提供遥感专用软件、遥感算法的上传按钮;对于上传的文件,提供引导步骤,让用户填写文件描述、使用方法、配置信息。
远程文件系统存储器对遥感算法、遥感专用软件、遥感专用软件运行所依赖软件通过文件id号进行重命名及存储,具体方法为开发一个远程文件系统存储器,用于用户远程存储上传的文件,远程存储时,以文件id号+遥感专用软件名做为新的文件名,将遥感软件传送到http文件服务器的遥感软件存储目录下,以文件id号+遥感算法名做为新的文件名,将遥感算法传送到http文件服务器的遥感算法存储目录下,以文件id号+遥感专用软件运行所依赖软件名做为新的文件名,将遥感专用软件运行所依赖软件传送到http文件服务器的遥感专用软件运行所依赖软件存储目录下。
MySQL数据库表中记录前端web页面用户输入的文件相关信息与记录文件存放在http文件服务器目录信息,包括:记录文件id号、文件名、文件描述、使用方法描述、配置信息、上传用户、上传时间戳以及文件存放目录。
在步骤S3中,具体步骤为:web服务端开发脚本读取nexus docker中所有的镜像名与标签; web服务端将读取的所有镜像名与标签进行对比,过滤出操作系统镜像;开发spring控制层代码,接收用户从前端传来的操作系统搜索请求,把web服务器过滤出操作系统镜像返回给前端; spring控制层代码从Mysql数据库表中读出文件信息,供用户选择遥感图像处理所需的遥感专用软件、遥感算法、遥感专用软件运行所依赖软件;给出前端文本框,让用户填写镜像的镜像名和标签。
在步骤S4中,docker file生成向导从MySQL数据库docker file文件表中查询已分配的端口号,使用hash方法给每个需要制作的镜像分配一个端口号,该方法如下:开发spring控制层代码从MySQL数据库docker file文件表中查询已分配的端口号;使用hash方法给每个需要制作的镜像分配一个端口号,并把该端口号返回给前端页面。
同时,Docker file自动生成器根据docker file DSL语言的From、MAINTAINER 、RUN 、CMD、EXPOSE、ENV、ADD 、COPY、ENTRYPOINT、VOLUME、USER、WORKDIR、ONBUILD 的语言要素,给各个要素列出一个用户可以填写的步骤编号;该编号代表了该语言要求在dockerfile中所处的步骤;构建一个docker file DSL语言要素的引导项,让用户填写各个语言要素对应语言实例信息;根据docker file生成向导与用户页面交互结果,获得制作docker file的基础信息,然后将这些页面信息中的参数根据向导语义分别映射到dockerfile DSL语言中以此自动形成docker file文件。
在步骤S5中,使用远程文件系统存储器,将dockerfile文件传送到http文件服务器的docker file存储目录下,具体步骤为:使用java调用开源jsch框架提供的开源免费的jsch类的接口类,实现web服务器能远程免密登陆http文件服务器;开发一个方法用户实现SCP的远程文件拷贝,把dockerfile文件传送到远程http文件服务器。
在步骤S6中,在web前端提供一个触发镜像制作的按钮,并将用户触发镜像制作的消息传递给web后端;在web后端接收到制作镜像命令后,docker制作与推送处理使用java调用开源jsch框架提供的开源免费的jsch类的接口,免密登陆到Docker制作系统,从MySQL数据库dockerfile文件描述表中找到待制作镜像的远程http文件服务器存放docker file的路径,将docker file下载,并执行docker build命令,在当前docker制作机器上进行镜像的制作,并将镜像制作过程产生的信息返回给web前端。具体方法为:开发spring控制层代码,接收用户制作镜像命令;使用java调用开源jsch框架提供的开源免费的jsch类的接口,免密登陆到Docker制作机器;使用SpringJDBC读取MySQL数据库,从dockerfile文件描述表中找到待制作镜像的远程http文件服务器存放docker file的路径;从http文件服务器中下载docker file文件;执行docker build命令,构建出docker镜像文件;将镜像结果反馈给前端。
在步骤S7中,web前端收到web后端发送过来的镜像制作信息,将其在浏览器中显示,用户根据制作结果信息判断镜像制作是否成功,如果镜像制作成功则点击镜像上传按钮,通过后端上传镜像。
web后端接收到镜像上传命令后,docker制作与推送处理使用java调用开源jsch框架提供的开源免费的jsch类的接口,登陆到Docker制作系统,执行docker push命令将本次制作出的镜像上传到镜像仓库。具体步骤为: docker制作与推送处理逻辑使用java调用开源jsch框架提供的开源免费的jsch类的接口,实现web服务器能远程免密登陆Docker制作机器;在Docker制作机器执行docker push命令将本次制作出的镜像上传到镜像仓库。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (10)
1.一种云计算中遥感图像处理的Docker镜像自动化动态构建方法,其特征在于,包括有以下步骤:
S1:构建存储基础镜像和专用镜像的nexus docker仓库及制作Docker镜像的Docker制作系统,同时构建http文件服务器;
S2:构建一个前端web页面,让用户上传遥感图像处理所需要的遥感算法、遥感专用软件、遥感专用软件运行所依赖软件,并将这些文件使用远程存储方式存储到http文件服务器,并对这些文件进行分类存储,同时使用MySQL数据库表记录前端web页面用户输入的文件相关信息跟它们存放在http文件服务器的目录信息;
S3:通过镜像制作向导页面从nexus docker仓库中搜索出供用户选择的操作系统,并从Mysql数据库中读出S2中存储的前端web页面用户输入的文件相关信息跟它们存放在http文件服务器的目录信息,供用户选择遥感图像处理所需的遥感专用软件、遥感算法、遥感专用软件运行所依赖软件,并指定当前镜像的镜像名和标签;
S4:构建一个端口分配模块,该模块从MySQL数据库docker file文件描述表中查询已分配的端口号,使用hash方法给每个需要制作的镜像分配一个端口号;构建Docker file文件自动生成器,Docker file文件自动生成器根据用户前端提供的操作系统、遥感专用软件、遥感专用软件运行所依赖软件、遥感算法执行程序与端口号等信息制作docker镜像的docker file文件;
S5:使用远程文件存储方法,将dockerfile文件传送到http文件服务器的docker file存储目录下,在Mysql数据库中的docker file文件描述表中添加对应的新记录,用于存储docker file 文件对应的信息;
S6:用户在web前端触发镜像制作命令并传递给web后端,docker制作与推送处理使用java调用jsch开源框架提供的开源免费的jsch类接口,登陆到Docker制作系统,从MySQL数据库的dockerfile文件描述表中找到待制作镜像的http文件服务器存放docker file的路径,将docker file下载并执行docker build命令,在当前docker制作机器上进行镜像的制作,并将镜像制作过程产生的信息返回给web前端;
S7:web前端收到镜像制作信息并在浏览器中显示,用户根据制作结果信息判断镜像制作是否成功,若镜像制作成功则通知后端上传镜像,web后端接收到镜像上传命令后,docker制作与推送处理使用java调用jsch开源框架提供的开源免费的jsch类接口,登陆到Docker制作系统,执行docker push命令将本次制作出的镜像上传到镜像仓库。
2.根据权利要求1所述的云计算中遥感图像处理的Docker镜像自动化动态构建方法,其特征在于,在步骤S1中,部署ubuntu操作系统服务器;下载开源软件nexus系统并配置nexus-3.X远程镜像地址及访问端口;启动nexus以此构建出一个nexus docker仓库。
3.根据权利要求1所述的云计算中遥感图像处理的Docker镜像自动化动态构建方法,其特征在于,在步骤S1中,制作Docker制作系统时,部署一台ubuntu操作系统的服务器;添加docker的APT仓库;增加docker APT仓库的新GPG密钥;更新APT软件包索引;安装Docker,在/etc/docker/daemon.json中配置搭建私有nexus docker仓库地址,使其能够访问本地私有nexus docker仓库。
4.根据权利要求1所述的云计算中遥感图像处理的Docker镜像自动化动态构建方法,其特征在于,在步骤S2中,远程文件系统存储器对遥感算法、遥感专用软件、遥感专用软件运行所依赖软件通过文件id号进行重命名及存储。
5.根据权利要求1所述的云计算中遥感图像处理的Docker镜像自动化动态构建方法,其特征在于,在步骤S3中,通过web服务端开发脚本读取nexus docker中所有的镜像名与标签并进行对比,过滤出操作系统镜像。
6.根据权利要求5所述的云计算中遥感图像处理的Docker镜像自动化动态构建方法,其特征在于,通过开源框架spring中的控制层代码接收用户的操作系统搜索请求并把过滤出的操作系统镜像返回给用户;spring控制层代码从Mysql数据库表中读出文件信息,供用户选择遥感图像处理所需的遥感专用软件、遥感算法、遥感专用软件运行所依赖软件。
7.根据权利要求1所述的云计算中遥感图像处理的Docker镜像自动化动态构建方法,其特征在于,在步骤S4中,通过spring控制层代码从MySQL数据库docker file文件描述表中查询已分配的端口号。
8.根据权利要求7所述的云计算中遥感图像处理的Docker镜像自动化动态构建方法,其特征在于,Docker file文件自动生成器根据语言要素,为各个要素列出一个用户可以填写的步骤编号,该编号代表了该语言要求在dockerfile中所处的步骤;根据docker file生成向导与用户页面交互结果,获得制作docker file的基础信息并形成docker file文件。
9.根据权利要求1所述的云计算中遥感图像处理的Docker镜像自动化动态构建方法,其特征在于,在步骤S5中,通过java调用开源jsch框架提供的开源免费的jsch类的接口类,实现web服务器远程免密登陆http文件服务器,docker file 文件对应的信息包括dockerfile 文件id号,镜像名,镜像标签,分配的端口号及存放目录信息。
10.根据权利要求1所述的云计算中遥感图像处理的Docker镜像自动化动态构建方法,其特征在于,在步骤S6中,开发spring控制层代码接收用户制作镜像命令,使用SpringJDBC读取MySQL数据库,从dockerfile文件描述表中找到待制作镜像的远程http文件服务器存放docker file的路径。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810488534.1A CN108897527B (zh) | 2018-05-21 | 2018-05-21 | 一种云计算中遥感图像处理的Docker镜像自动化动态构建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810488534.1A CN108897527B (zh) | 2018-05-21 | 2018-05-21 | 一种云计算中遥感图像处理的Docker镜像自动化动态构建方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108897527A true CN108897527A (zh) | 2018-11-27 |
CN108897527B CN108897527B (zh) | 2022-04-15 |
Family
ID=64342967
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810488534.1A Expired - Fee Related CN108897527B (zh) | 2018-05-21 | 2018-05-21 | 一种云计算中遥感图像处理的Docker镜像自动化动态构建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108897527B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109857462A (zh) * | 2019-01-25 | 2019-06-07 | 东莞理工学院 | 遥感图像可视化编辑器的后台Docker任务映射方法 |
CN111522627A (zh) * | 2020-04-26 | 2020-08-11 | 杭州威佩网络科技有限公司 | 一种Docker镜像管理方法、装置、设备及介质 |
CN111857757A (zh) * | 2020-07-23 | 2020-10-30 | 上海方联技术服务有限公司 | 一种基于容器云的航拍图像处理服务的高效部署方法 |
CN112527319A (zh) * | 2020-12-16 | 2021-03-19 | 浙江大学德清先进技术与产业研究院 | 基于Docker的遥感智能处理算法的管理方法 |
CN113342359A (zh) * | 2021-05-13 | 2021-09-03 | 烽火通信科技股份有限公司 | 容器镜像文件智能生成方法、装置、设备及存储介质 |
CN113377489A (zh) * | 2020-03-09 | 2021-09-10 | 中科星图股份有限公司 | 基于云平台的遥感智能监测应用的构建运行方法和装置 |
CN113918096A (zh) * | 2021-10-21 | 2022-01-11 | 城云科技(中国)有限公司 | 一种算法镜像包的上传方法、装置及应用 |
US11269596B2 (en) | 2019-06-20 | 2022-03-08 | International Business Machines Corporation | Automated microservice creation based on user interaction |
US20230091587A1 (en) * | 2021-09-17 | 2023-03-23 | Electronics And Telecommunications Research Institute | Docker image creation apparatus and method |
CN116301950A (zh) * | 2023-05-15 | 2023-06-23 | 北京中诺链捷数字科技有限公司 | Docker镜像生成方法、装置、设备和存储介质 |
US12026493B2 (en) * | 2021-09-17 | 2024-07-02 | Electronics And Telecommunications Research Institute | Docker image creation apparatus and method |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080172411A1 (en) * | 2007-01-12 | 2008-07-17 | Canon Kabushiki Kaisha | Object data processing method and apparatus |
CN105577779A (zh) * | 2015-12-21 | 2016-05-11 | 用友网络科技股份有限公司 | 一种容器化部署大企业私有云的方法和系统 |
CN106020930A (zh) * | 2016-05-13 | 2016-10-12 | 深圳市中润四方信息技术有限公司 | 一种基于应用容器的应用管理方法及系统 |
CN106933635A (zh) * | 2017-03-15 | 2017-07-07 | 北京搜狐新媒体信息技术有限公司 | Docker镜像生成方法及Docker容器 |
WO2017129106A1 (zh) * | 2016-01-29 | 2017-08-03 | 腾讯科技(深圳)有限公司 | 数据请求处理的方法、服务器及系统 |
CN107590365A (zh) * | 2017-08-22 | 2018-01-16 | 武汉古奥基因科技有限公司 | Docker技术在高通量测序数据分析中的应用 |
US9875430B1 (en) * | 2016-03-30 | 2018-01-23 | Descartes Labs, Inc. | Iterative relabeling using spectral neighborhoods |
CN108021428A (zh) * | 2017-12-05 | 2018-05-11 | 华迪计算机集团有限公司 | 一种基于Docker实现网络靶场的方法和系统 |
-
2018
- 2018-05-21 CN CN201810488534.1A patent/CN108897527B/zh not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080172411A1 (en) * | 2007-01-12 | 2008-07-17 | Canon Kabushiki Kaisha | Object data processing method and apparatus |
CN105577779A (zh) * | 2015-12-21 | 2016-05-11 | 用友网络科技股份有限公司 | 一种容器化部署大企业私有云的方法和系统 |
WO2017129106A1 (zh) * | 2016-01-29 | 2017-08-03 | 腾讯科技(深圳)有限公司 | 数据请求处理的方法、服务器及系统 |
US9875430B1 (en) * | 2016-03-30 | 2018-01-23 | Descartes Labs, Inc. | Iterative relabeling using spectral neighborhoods |
CN106020930A (zh) * | 2016-05-13 | 2016-10-12 | 深圳市中润四方信息技术有限公司 | 一种基于应用容器的应用管理方法及系统 |
CN106933635A (zh) * | 2017-03-15 | 2017-07-07 | 北京搜狐新媒体信息技术有限公司 | Docker镜像生成方法及Docker容器 |
CN107590365A (zh) * | 2017-08-22 | 2018-01-16 | 武汉古奥基因科技有限公司 | Docker技术在高通量测序数据分析中的应用 |
CN108021428A (zh) * | 2017-12-05 | 2018-05-11 | 华迪计算机集团有限公司 | 一种基于Docker实现网络靶场的方法和系统 |
Non-Patent Citations (1)
Title |
---|
赵乐乐: "基于Docker技术的全文搜索引擎的研究与应用", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109857462A (zh) * | 2019-01-25 | 2019-06-07 | 东莞理工学院 | 遥感图像可视化编辑器的后台Docker任务映射方法 |
US11269596B2 (en) | 2019-06-20 | 2022-03-08 | International Business Machines Corporation | Automated microservice creation based on user interaction |
CN113377489A (zh) * | 2020-03-09 | 2021-09-10 | 中科星图股份有限公司 | 基于云平台的遥感智能监测应用的构建运行方法和装置 |
CN111522627A (zh) * | 2020-04-26 | 2020-08-11 | 杭州威佩网络科技有限公司 | 一种Docker镜像管理方法、装置、设备及介质 |
CN111522627B (zh) * | 2020-04-26 | 2023-11-28 | 杭州威佩网络科技有限公司 | 一种Docker镜像管理方法、装置、设备及介质 |
CN111857757A (zh) * | 2020-07-23 | 2020-10-30 | 上海方联技术服务有限公司 | 一种基于容器云的航拍图像处理服务的高效部署方法 |
CN111857757B (zh) * | 2020-07-23 | 2023-02-10 | 上海方联技术服务有限公司 | 一种基于容器云的航拍图像处理服务的高效部署方法 |
CN112527319A (zh) * | 2020-12-16 | 2021-03-19 | 浙江大学德清先进技术与产业研究院 | 基于Docker的遥感智能处理算法的管理方法 |
CN113342359A (zh) * | 2021-05-13 | 2021-09-03 | 烽火通信科技股份有限公司 | 容器镜像文件智能生成方法、装置、设备及存储介质 |
US20230091587A1 (en) * | 2021-09-17 | 2023-03-23 | Electronics And Telecommunications Research Institute | Docker image creation apparatus and method |
US12026493B2 (en) * | 2021-09-17 | 2024-07-02 | Electronics And Telecommunications Research Institute | Docker image creation apparatus and method |
CN113918096B (zh) * | 2021-10-21 | 2023-09-22 | 城云科技(中国)有限公司 | 一种算法镜像包的上传方法、装置及应用 |
CN113918096A (zh) * | 2021-10-21 | 2022-01-11 | 城云科技(中国)有限公司 | 一种算法镜像包的上传方法、装置及应用 |
CN116301950A (zh) * | 2023-05-15 | 2023-06-23 | 北京中诺链捷数字科技有限公司 | Docker镜像生成方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108897527B (zh) | 2022-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108897527A (zh) | 一种云计算中遥感图像处理的Docker镜像自动化动态构建方法 | |
US10972466B2 (en) | Security systems, methods, and computer program products for information integration platform | |
US10382291B2 (en) | Provisioning framework for binding related cloud services | |
JP6621543B2 (ja) | ハイブリッドアプリケーションの自動更新 | |
CN103380423B (zh) | 用于私人云计算的系统和方法 | |
CN105706086B (zh) | 用于获取、存储和消费大规模数据流的管理服务 | |
CN111901294A (zh) | 一种构建在线机器学习项目的方法及机器学习系统 | |
US10225140B2 (en) | Portable instance provisioning framework for cloud services | |
CN110427299A (zh) | 微服务系统应用的日志处理方法、相关设备及系统 | |
CN106873952B (zh) | 移动端网页开发的数据处理系统和方法、及应用装置 | |
US20150089408A1 (en) | Method and framework for content viewer integrations | |
CN112612449A (zh) | 一种网页页面的同步方法及装置、设备、存储介质 | |
CN116171425A (zh) | 在容器化环境中共享缓存的类别数据 | |
CN111966692A (zh) | 针对数据仓库的数据处理方法、介质、装置和计算设备 | |
CN113778442A (zh) | 一种系统菜单生成方法、装置、设备及存储介质 | |
CN115836287A (zh) | 目标推荐方法、装置及存储介质 | |
CN116680040A (zh) | 一种容器处理方法、装置、设备、存储介质及程序产品 | |
US20220357938A1 (en) | Automatically configuring and deploying a software operator in a distributed computing environment from a package | |
US20170286523A1 (en) | Apparatus and method for verifying cloud service compatibility | |
CN114253546A (zh) | 代码的生成方法、装置、存储介质及电子装置 | |
CN115686811A (zh) | 进程管理方法、装置、计算机设备及存储介质 | |
CN103917944A (zh) | 动态更新设备中文件夹内容的系统及其方法 | |
CN115390912B (zh) | 资源发现方法、装置、计算机设备和存储介质 | |
US11977487B2 (en) | Data control device, storage system, and data control method | |
US20210319042A1 (en) | Content source integration |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20220415 |