CN113760442A - 一种应用的运行和访问方法、装置及设备 - Google Patents

一种应用的运行和访问方法、装置及设备 Download PDF

Info

Publication number
CN113760442A
CN113760442A CN202011121592.4A CN202011121592A CN113760442A CN 113760442 A CN113760442 A CN 113760442A CN 202011121592 A CN202011121592 A CN 202011121592A CN 113760442 A CN113760442 A CN 113760442A
Authority
CN
China
Prior art keywords
application
running
plug
data management
accessing
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
Application number
CN202011121592.4A
Other languages
English (en)
Inventor
万川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingdong Century Trading Co Ltd
Beijing Wodong Tianjun Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Wodong Tianjun Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Century Trading Co Ltd, Beijing Wodong Tianjun Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN202011121592.4A priority Critical patent/CN113760442A/zh
Publication of CN113760442A publication Critical patent/CN113760442A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45575Starting, stopping, suspending or resuming virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请实施例公开了一种应用的运行和访问方法,该方法包括:构建集成有数据管理插件和代理服务插件的目标容器;其中,所述数据管理插件用于管理应用;所述代理服务插件用于访问应用;所述目标容器用于部署多个应用;通过所述数据管理插件运行所述多个应用;通过所述代理服务插件访问所述多个应用。本申请实施例同时还公开了一种应用的运行和访问装置、设备及计算机可读存储介质。

Description

一种应用的运行和访问方法、装置及设备
技术领域
本申请涉及计算机技术领域,尤其涉及一种应用的运行和访问方法、装置、设备及计算机可读存储介质。
背景技术
每一应用上线至平台之前都需要对其相关功能进行测试验证;相对技术中,大多使用Docker集群来部署待测应用以完成相关的测试工作,这样存在因Docker集群中的每一Docker内部只能部署一个待测应用,而出现的服务器资源闲置率较高的问题,进而导致服务器资源浪费严重。
发明内容
为解决上述技术问题,本申请实施例期望提供一种应用的运行和访问方法、装置、设备及计算机可读存储介质,合理地利用服务器资源,进而提高了服务器资源的使用率。
为达到上述目的,本申请的技术方案是这样实现的:
一种应用的运行和访问方法,所述方法包括:
构建集成有数据管理插件和代理服务插件的目标容器;其中,所述数据管理插件用于管理应用;所述代理服务插件用于访问应用;所述目标容器用于部署多个应用;
通过所述数据管理插件运行所述多个应用;
通过所述代理服务插件访问所述多个应用。
在一些实施方式中,所述构建集成有数据管理插件和代理服务插件的目标容器,包括:
构建基础镜像;
创建所述数据管理插件对应的配置文件;
将所述配置文件导入所述基础镜像,并对所述基础镜像进行处理生成所述目标容器。
在一些实施方式中,构建基础镜像,包括:
创建与所述目标容器对应的基本文件,并运行所述基本文件生成目标映像;
获取基础工具包、所述数据管理插件对应的第一资源以及所述代理服务插件对应的第二资源;其中,所述基础工具包包括构建所述目标容器所需的基础资源;
将所述基础工具包、所述第一资源和所述第二资源导入所述目标映像,生成所述基础镜像。
在一些实施方式中,所述通过所述数据管理插件运行所述多个应用,包括:
通过所述数据管理插件获取每一应用的源文件;
通过所述数据管理插件对所述每一应用的源文件进行编译生成所述每一应用的目标代码,并基于所述每一应用的目标代码运行所述每一应用。
在一些实施方式中,所述通过所述数据管理插件获取所述每一应用的源文件,包括:
获取所述每一应用的目标地址;
基于所述目标地址,通过所述数据管理插件获取所述每一应用的源文件。
在一些实施方式中,所述通过所述代理服务插件访问所述多个应用,包括:
通过所述代理服务插件,获取所述每一应用的第一配置文件;
基于所述每一应用的第一配置文件,访问所述每一应用。
在一些实施方式中,所述通过所述代理服务插件,获取所述每一应用的第一配置文件,包括:
获取所述目标容器的目标区域;其中,所述目标区域用于存储访问所述目标容器中每一应用所需的配置文件;
通过所述代理服务插件,从所述目标区域内获取所述每一应用的第一配置文件。
在一些实施方式中,所述方法还包括:
获取待处理应用的第二配置文件;
基于所述第二配置文件,更新所述目标区域存储的第一配置文件为第三配置文件;其中,所述第三配置文件包括所述每一应用的第一配置文件和所述待处理应用的第二配置文件。
一种应用的运行和访问装置,包括:构建模块、运行模块和访问模块;
所述构建模块,用于构建集成有数据管理插件和代理服务插件的目标容器;其中,所述数据管理插件用于管理应用;所述代理服务插件用于访问应用;所述目标容器用于部署多个应用;
所述运行模块,用于通过所述数据管理插件运行所述多个应用;
所述访问模块,用于通过所述代理服务插件访问所述多个应用。
一种应用的运行和访问设备,包括:处理器、存储器和通信总线;
所述通信总线用于实现所述处理器和所述存储器之间的通信连接;
所述处理器用于执行所述存储器中的程序,以实现上述任一所述的应用的运行和访问方法。
一种计算机可读存储介质,该计算机可读存储介质存储有一个或者多个程序,一个或者多个程序可被一个或者多个处理器执行,以实现上述的应用的运行和访问方法的步骤。
本申请实施例所提供的应用的运行和访问方法、装置、设备及计算机可读存储介质,构建集成有数据管理插件和代理服务插件的目标容器;其中,数据管理插件用于管理应用;代理服务插件用于访问应用;目标容器用于部署多个应用;通过数据管理插件运行多个应用;通过代理服务插件访问多个应用;如此,通过构建集成有数据管理插件和代理服务插件的目标容器,来同时运行和访问多个应用,而不是如相对技术中只能在每一Docker中部署一个待测应用,通过合理地利用服务器资源,进而提高了服务器资源的使用率。
附图说明
图1为本申请实施例提供的一种应用的运行和访问方法的流程示意图;
图2为本申请实施例提供的另一种应用的运行和访问方法的流程示意图;
图3为本申请实施例提供的又一种应用的运行和访问方法的流程示意图;
图4为本申请实施例提供的同一组工程的域名代理放到同一个Nginx配置文件的示意图;
图5为本申请实施例提供的一种在目标Docker中运行并访问多个应用的具体实现流程图的流程示意图;
图6为本申请实施例提供的一种应用的运行和访问装置的结构示意图;
图7为本申请实施例提供的一种应用的运行和访问设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
应理解,说明书通篇中提到的“本申请实施例”或“前述实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“本申请实施例中”或“在前述实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中应。在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
为了能够更加详尽地了解本申请实施例的特点与技术内容,下面结合附图对本申请实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本申请。
本申请的实施例提供一种应用的运行和访问方法,应用于应用的运行和访问设备,参照图1,该方法包括以下步骤:
步骤101、构建集成有数据管理插件和代理服务插件的目标容器。
其中,数据管理插件用于管理应用;代理服务插件用于访问应用;目标容器用于部署多个应用。
在本申请实施例中,数据管理插件可以是用来处理数据或源代码构建的工具,进一步地,数据管理插件可以用来编译不同类型应用的源代码;同时数据管理插件还可以是一种持续集成工具,即数据管理插件用于监控持续重复的工作,在本申请以下实施例中,均以Jenkins作为数据管理插件为例进行解释说明。
在本申请实施例中,代理服务插件可以是一个高性能的超文本传输协议(HyperText Transfer Protocol,HTTP)和反向代理Web服务器;在本申请以下实施例中,均以Nginx作为代理服务插件为例进行解释说明;其中,Nginx可以在大多数操作系统:Unix、Linux以及OS上编译运行,并有Windows移植版。
其中,Nginx是一个HTTP服务器,可以将服务器上的静态文件:超文本标记语言(Hyper Text Markup Language,HTML)以及图片等通过HTTP协议展现在客户端。
需要说明的是,目标容器可以是一个开源的应用容器引擎;在本申请实施例中,均以目标Docker作为容器为例进行解释说明;其中,目标Docker可以实现用户打包开发出的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上,同时目标Docker也可以实现虚拟化。
需要说明的,Docker可以提供一套完整的应用运行时所需的环境,同时Docker中除了应用程序本身之外,运行该应用所需的全部依赖、类库、其他二进制文件以及配置文件等,都可以统一被打入一个称为镜像的包中;其中,Docker的实现技术基于开放标准,可以运行在任何操作系统上,且操作系统可以是但不限于Windows操作系统、Linux操作系统或Android操作系统等,具体的Windows操作系统可以是但不限于Windows 8操作系统、Windows 10操作系统等。
需要说明的是,目标Docker中是集成有Jenkins以及Nginx的容器;其具体的集成实现方案在本申请中不作任何限定。
步骤102、通过数据管理插件运行多个应用。
在本申请实施例中,应用的运行和访问设备通过Jenkins在目标Docker内部编译多个应用的代码;其中,多个应用可以是同一类型的应用,也可以是不同类型的应用。
需要说明的是,Jenkins可以提供一个开源的、可扩展的持续集成、交付以及部署的基于web界面的平台。
其中,通过Jenkins来实现多个不同应用的持续集成交付;在一种可行的实现方式中,在应用的基础功能组件完成后,利用开发好的Jenkins适配应用的基础功能,并进行构建打包,以使得应用的开发者对构建输出包进行测试或发布版本。
步骤103、通过代理服务插件访问多个应用。
在本申请实施例中,应用的运行和访问设备可通过Nginx来访问运行在目标Docker内部的多个应用;其中,Nginx是基于表述性状态迁移(Representational StateTransfer,REST)架构风格,以统一资源定位器(Uniform Resource Locator,URL)或统一资源描述符(Uniform Resource Identifier,URI)作为沟通依据,通过HTTP协议提供各种网络服务;其中,URI是一个用于标识某一互联网资源名称的字符串。
需要说明的是,在服务器网络上,每一信息资源都有统一的且在网上唯一的地址,该地址为URL,其是服务器网络的统一资源定位标识,即网络地址;其中,URL可以由三部分组成:资源类型、存放资源的主机域名以及资源文件名,或由四部分组成:协议、主机、端口以及路径。
本申请实施例所提供的应用的运行和访问方法,构建集成有数据管理插件和代理服务插件的目标容器;通过数据管理插件运行多个应用;通过代理服务插件访问多个应用;如此,通过构建集成有数据管理插件和代理服务插件的目标容器,来同时运行和访问多个应用,合理地利用服务器资源,进而提高了服务器资源的使用率。
基于前述实施例,本申请的实施例提供一种应用的运行和访问方法,参照图2所示,该方法包括以下步骤:
步骤201、应用的运行和访问设备构建基础镜像。
在本申请实施例中,应用的运行和访问设备基于Dockerfile文件来构建基础镜像;其中,Dockerfile文件是一个用来构建镜像的文本文件,Dockerfile文件内容中包含多个构建镜像所需的指令和说明;同时,Dockerfile文件一般分为四部分:基础镜像信息、维护者信息、镜像操作指令和容器启动时执行指令。
步骤202、应用的运行和访问设备创建数据管理插件对应的配置文件。
在本申请实施例中,应用的运行和访问设备通过调试Jenkins配置文件来创建Jenkins;其中,在目标Docker中开发Jenkins可以通过在Jenkins应用仓库里,将所需的日志路径创建好;其中,日志主要有请求的资源路径、服务器响应状态、请求的来源、资源大小以及用户浏览器标识等。
需要说明的是,日志是Nginx的请求日志,用于存储用户访问目标Docker内部的Jenkins,以及通过Jenkins编译出来提供用户访问在目标Docker内运行的应用的Nginx访问日志;其中,应用的运行和访问设备对目标Docker上运行的任一应用进行访问的访问记录,都会记录在该Nginx的请求日志里面;其中,Nginx的请求日志主要用于分析请求来源,以及监控是否有恶意请求等。
在一种可行的实现方式中,Nginx的请求日志可以是以下信息:
"@timestamp":"2020-09-10T11:16:42+08:00","@fields":{"request":"GET/static-shop-common/page/home.bundle.js HTTP/1.1","status":"200","http_referrer":"http://jshopx.jd.com/","remote_addr":"172.22.141.3","remote_user":"-","bytes_sent":"15897","body_bytes_sent":"15614","request_time":"0.000","upstream_response_time":"-","http_x_forwarded_for":"-","http_user_agent":"Mozilla/5.0(Macintosh;Intel Mac OS X 10_14_6)AppleWebKit/537.36(KHTML,like Gecko)Chrome/85.0.4183.83Safari/537.36"}
同时,创建Jenkins需编写Jenkins中的启动start.sh文件和停止stop.sh文件;其中,start.sh文件主要负责启动目标Docker内集成的Nginx和Jenkins。
在一种可行的实现方式中,创建Nginx请求日志、启动Nginx以及启动Jenkins服务可以通过以下代码实现:
#创建Nginx请求日志
touch/export/Logs/nginx/nginx_access.log
touch/export/Logs/nginx/nginx_error.log
#启动Nginx
nginx-c/opt/nginx/conf/nginx.conf
#启动Jenkins服务
java-jar/jenkins.war--httpPort=8080
其中,创建Nginx请求日志对应的代码表征为在目标Docker上创建服务器正常响应用户的nginx_access.log日志,以及Nginx运行的故障信息的nginx_error.log日志;启动Nginx对应的代码表征为启动Nginx,启动后用户才能访问到目标Docker上部署的所有应用;启动Jenkins服务对应的代码表征为启动Jenkins,启动后用户才能访问到目标Docker上部署的Jenkins。
同时,创建Jenkins还需编写Jenkins中的stop.sh文件,其中stop.sh文件是实现静态资源访问的核心文件,且通过Nginx目录下的配置文件拷贝至目标Docker的配置目录下,再次启动Nginx,以实现配置文件的重载。
在一种可行的实现方式中,停止Nginx、拷贝Nginx配置以及启动Nginx可以通过以下代码来实现:
#停止Nginx
nginx-s stop
#拷贝Nginx配置
cp/root/.jenkins/workspace/nginx-domains/domains/*/opt/nginx/conf/domains/
cp/root/.jenkins/workspace/nginx-domains/mime.types/opt/nginx/conf/
cp/root/.jenkins/workspace/nginx-domains/nginx.conf/opt/nginx/conf/
#启动Nginx
nginx-c/opt/nginx/conf/nginx.conf
其中,停止Nginx对应的代码表征停止Nginx服务,结束所有正在运行的Nginx进程;拷贝Nginx配置对应的代码表征拷贝Nginx配置,这里会将相关Nginx配置应用里面所有的配置文件,全部拷贝到目标Docker上Nginx的安装目录里面;这里主要作用就是使Nginx可以代理到Jenkins编译出来的不同的应用上去,实现用户可以访问的目的;启动nginx对应的代码表征启动nginx服务,这时所有拷贝过来的配置文件都生效了;所有通过Jenkins编译出来的应用也都能访问了。
步骤203、应用的运行和访问设备将配置文件导入基础镜像,并对基础镜像进行处理生成目标容器。
在本申请实施例中,应用的运行和访问设备可以对Jenkins对应的应用仓库与基础镜像进行处理,形成目标容器并发布上线。
步骤204、应用的运行和访问设备通过数据管理插件获取每一应用的源文件。
在本申请实施例中,应用的运行和访问设备基于安装git参数插件来配置集成在目标Docker内的Jenkins,并基于该Jenkins从多个应用对应的仓库地址拉取多个应用对应的源文件。
需要说明的是,源文件即为应用开发者使用开发工具所支持的语音编写出来的源文件;其中,源文件是一组有序的数字或字母的排列。
其中,Jenkins可以使用HTTP协议去获取源文件,也可以使用安全外壳(SecureShell,SSH)协议去获取源文件,本申请对此不作任何限定。
步骤205、应用的运行和访问设备通过数据管理插件对每一应用的源文件进行编译生成每一应用的目标代码,并基于每一应用的目标代码运行每一应用。
在本申请实施例中,应用的运行和访问设备通过Jenkins来编译每一应用的源文件来生成每一应用的对应的目标代码,并对每一应用的目标代码进行处理来运行每一应用。
步骤206、应用的运行和访问设备通过代理服务插件,获取每一应用的第一配置文件。
其中,应用的运行和访问设备通过创建Nginx,并基于创建成功的Nginx对应的配置任务,以实现访问或测试运行在目标Docker中的每一应用。
步骤207、应用的运行和访问设备基于每一应用的第一配置文件,访问每一应用。
在本申请实施例中,应用的运行和访问设备基于Nginx来拉取对应的配置文件来访问部署在目标Docker内的每一应用;其中,在目标Docker中的应用是否运行正常,可以基于是否能够正常访问来确定,若不能正常访问,可以基于Nginx的请求日志查看原因。
需要说明的是,对在目标Docker中运行的应用进行访问时所使用的策略是基于Nginx的匹配策略。
在一种可行的实现方式中,Nginx里面的配置文件:static1.xx.com/a可以编写为以下代码:
location^~/a{
alias/export/jenkins/workspace/a/dist;
}
其中,该代码表征Nginx匹配到static1.xx.com/a路径下的文件,则返回/export/jenkins/workspace/a/dist这个路径下的文件。
需要说明的是,本实施例中与其它实施例中相同步骤和相同内容的说明,可以参照其它实施例中的描述,此处不再赘述。
本申请实施例所提供的应用的运行和访问方法,通过构建集成有数据管理插件和代理服务插件的目标容器,来同时运行和访问多个应用,合理地利用服务器资源,进而提高了服务器资源的使用率。
基于前述实施例,本申请的实施例还提供一种应用的运行和访问方法,如图3所示,该方法包括以下步骤:
步骤301、应用的运行和访问设备创建与目标容器对应的基本文件,并运行基本文件生成目标映像。
在本申请实施例中,应用的运行和访问设备可以基于shell命令来创建基本文件,即编写Dockerfile文件,基于Dockerfile文件来构建目标映像;其中,Dockerfile文件是一个包含用于组合映像的命令的文本文档。
需要说明的是,目标Docker可以通过读取Dockerfile文件中的指令来自动生成映像。
步骤302、应用的运行和访问设备获取基础工具包、数据管理插件对应的第一资源以及代理服务插件对应的第二资源。
其中,基础工具包包括构建目标容器所需的基础资源。
在本申请实施例中,应用的运行和访问设备获取基础工具包、Jenkins对应的安装包以及Nginx对应的安装包,来构建集成有Jenkins以及Nginx的目标Docker;其中,第一资源是Jenkins对应的安装包,第二资源是Nginx对应的安装包。
其中,基础工具包至少包括:Node.js安装包(全局变量已设置)、镜像源管理工具(npm registry manager,nrm)依赖包(相应地设置依赖包下载源)、Node服务进程管理工具PM2以及webpack打包工具;其中,Node.js是一种运行在服务端的编译语言;webpack打包工具是代码编译工具,有对应的入口、出口、loader和插件。
步骤303、应用的运行和访问设备将基础工具包、第一资源和第二资源导入目标映像,生成基础镜像。
在本申请实施例中,应用的运行和访问设备将服务所需的运行环境、依赖包以及私服源等下载到目标映像中,即应用的运行和访问设备将上述的基础工具包、Jenkins对应的安装包以及Nginx对应的安装包导入目标映像并生成基础镜像。
步骤304、应用的运行和访问设备创建数据管理插件对应的配置文件。
步骤305、应用的运行和访问设备将配置文件导入基础镜像,并对基础镜像进行处理生成目标容器。
步骤306、应用的运行和访问设备获取每一应用的目标地址。
在本申请实施例中,应用的运行和访问设备获取多个开发者开发的多个应用对应的源代码的仓库地址信息。
步骤307、应用的运行和访问设备基于每一应用的目标地址,通过数据管理插件获取每一应用的源文件。
在本申请实施例中,应用的运行和访问设备基于Jenkins从每一应用对应的仓库地址拉取每一应用对应的源代码即源文件,可以使用HTTP协议去获取源文件,也可以使用SSH协议去获取源文件,本申请对此不作任何限定。
步骤308、应用的运行和访问设备通过数据管理插件对每一应用的源文件进行编译生成每一应用的目标代码,并基于每一应用的目标代码运行每一应用。
步骤309、应用的运行和访问设备获取目标容器的目标区域。
其中,目标区域用于存储访问目标Docker中每一应用所需的配置文件,目标区域为目标Docker中存放每一应用运行即被访问或测试时所需的配置文件的配置目录。
步骤310、应用的运行和访问设备通过代理服务插件,从目标区域内获取每一应用的第一配置文件。
在本申请实施例中,应用的运行和访问设备通过Nginx来拉取每一应用被访问或测试过程中所需配置文件。
需要说明的是,为了实现一个目标Docker部署不限数量的静态资源工程;而现实场景中同一个静态资源域名一般都对应一组静态资源工程,因此应用的运行和访问设备将同一组工程的域名代理放到一个Nginx配置文件中,这样就保证了后续可扩展性。如图4所示,给出了同一组工程的域名代理放到同一个Nginx配置文件的示意图;其中,静态资源域名为static1.xx.com对应的static1.xx.com/a以及static1.xx.com/b,放到同一个Nginx配置文件static1中,并将静态资源域名为static2.xx.com对应的static2.xx.com/a以及static2.xx.com/b放到通过一个Nginx配置文件static2中。
在一种可行的实现方式中,当用户访问了一个static1.xx.com/a/xx.js文件,Nginx匹配到static1.xx.com/a这个url规则,则返回/export/jenkins/workspace/a/dist这个路径下的文件,如下代码所示:
Figure BDA0002732165020000131
需要说明的是,在Nginx配置文件中,需将不同的访问路径,代理到Jenkins编译之后的文件目录。而不同的配置文件分别对应不同的域名目录路径,这样实现了不计数量的应用访问。
步骤311、应用的运行和访问设备基于第一配置文件,访问每一应用。
在一种可行的实现方式中,应用的运行和访问设备访问static1.xx.com/a/xx.js时,Nginx匹配到这个URL规则后,则返回/export/jenkins/workspace/a/dist这个路径下的文件;应用的运行和访问设备访问static1.xx.com/b/xx.js,Nginx匹配到这个URL规则后,则返回/export/jenkins/workspace/b/dist这个路径下的文件;其中,使用相同的域名,只是目录不同的应用,将其存放至一个文件中。
在另一种可行的实现方式中,应用的运行和访问设备访问static2.xx.com/a/xx.js,Nginx匹配到这个URL规则后,则返回/export/jenkins/workspace/c/dist这个路径下的文件。
需要说明的是,本实施例中与其它实施例中相同步骤和相同内容的说明,可以参照其它实施例中的描述,此处不再赘述。
本申请实施例所提供的应用的运行和访问方法,通过构建集成有数据管理插件和代理服务插件的目标容器,来同时运行和访问多个应用,合理地利用服务器资源,进而提高了服务器资源的使用率。
基于前述实施例,在本申请其他实施例中,应用的运行和访问设备在执行步骤103、步骤207以及步骤311之后,还可以执行以下步骤A1至步骤A2:
步骤A1、应用的运行和访问设备获取待处理应用的第二配置文件。
在本申请实施例中,目标docker中可以按照预设规则部署或运行多个应用,而每增加一个应用至目标docker中,都需要重新加载新的第一配置文件。
步骤A2、应用的运行和访问设备基于第二配置文件,更新目标区域存储的第一配置文件为第三配置文件。
其中,第三配置文件包括每一应用的第一配置文件和待处理应用的第二配置文件。
在本申请实施例中,目标Docker每扩展一个应用,需要重新Reload新配置文件才能访问到最新编译之后的静态资源文件。
在一种可行的实现方式中,应用的运行和访问设备首先停止当前Jenkins应用的Nginx服务;再将Nginx最新的配置文件拷贝到服务器Nginx配置目录;同时也可把nginx.conf拷贝到服务器全局Nginx目录,最后重启Nginx使新配置文件生效。
需要说明的是,应用的运行和访问设备因增加Nginx配置文件之后,Jenkins拉取的Nginx应用代码在/root/.jenkins/workspace/nginx-domains/domains/下,而目标Docker上Nginx启动的配置文件在/opt/nginx/conf/domains/目录下,因此执行拷贝操作;同时,若不拷贝的话,重启Nginx就没有最新的配置文件,相应的新增的应用也就无法访问。
如图5所示,给出了本申请实施例提供的一种在目标Docker中运行并访问多个应用的具体实现流程图;应用于应用的运行和访问设备,该应用的运行和访问设备创建集成有Jenkins以及Nginx的目标Docker,即开始后执行步骤501、基于编写Dockerfile文件来创建Dockerfile基础镜像应用,以及步骤502、将所需Jenkins及nginx以及jdk及tomcat打入基础镜像来构建基础镜像;在执行步骤501和步骤502的同时执行步骤503、调试Jenkins工程来创建Jenkins工程应用;然后执行步骤504、将基础镜像和Jenkins应用仓库打成应用镜像,即构建应用镜像后执行步骤505、将该目标Docker发布上线;再获取需运行在目标Docker内部多个应用的源代码,即执行步骤506、配置Jenkins以及安装git参数插件来执行步骤509、基于获取的源代码和配置编译命令创建应用编译任务;执行步骤509之后执行步骤510、执行编译任务并生成编译之后的文件即步骤511;同时应用的运行和访问设备执行步骤507、创建Nginx配置应用之后执行步骤508、创建拉取Nginx配置任务,应用的运行和访问设备需在目标Docker内部扩展应用时执行步骤512、通过拉取静态Nginx配置文件来执行任务;以及执行步骤513、执行shell命令将Nginx配置文件拷贝到Nginx配置目录,并停止当前Nginx服务并重新启动,即重启Nginx服务Reload新配置文件;应用的运行和访问设置在执行完步骤513以及步骤511之后,都可以提供用户基于HTTP访问运行在目标Docker内部的多个应用。
基于前述实施例,本申请的实施例还提供一种应用的运行和访问装置6,该应用的运行和访问装置6可以应用于图1~3对应的实施例提供的一种应用的运行和访问方法中,参照图6所示,该应用的运行和访问装置6包括:构建模块61、运行模块62和访问模块63,其中:
构建模块61,用于构建集成有数据管理插件和代理服务插件的目标容器;其中,数据管理插件用于管理应用;代理服务插件用于访问应用;目标容器用于部署多个应用;
运行模块62,用于通过数据管理插件运行多个应用;
访问模块63,用于通过代理服务插件访问多个应用。
在本申请其他实施例中,构建模块61,还用于构建基础镜像;
创建数据管理插件对应的配置文件;
将配置文件导入基础镜像,并对基础镜像进行处理生成目标容器。
在本申请其他实施例中,构建模块61,还用于创建与目标容器对应的基本文件,并运行基本文件生成目标映像;
获取基础工具包、数据管理插件对应的第一资源以及代理服务插件对应的第二资源;其中,基础工具包包括构建目标容器所需的基础资源;
将基础工具包、第一资源和第二资源导入目标映像,生成基础镜像。
在本申请其他实施例中,运行模块62,还用于通过数据管理插件获取每一应用的源文件;
通过数据管理插件对每一应用的源文件进行编译生成每一应用的目标代码,并基于每一应用的目标代码运行每一应用。
在本申请其他实施例中,运行模块62,还用于获取每一应用的目标地址;
基于目标地址,通过数据管理插件获取每一应用的源文件。
在本申请其他实施例中,访问模块63,还用于通过代理服务插件,获取每一应用的第一配置文件;
基于每一应用的第一配置文件,访问每一应用。
在本申请其他实施例中,访问模块63,还用于获取目标容器的目标区域;其中,目标区域用于存储访问目标容器中每一应用所需的配置文件;
通过代理服务插件,从目标区域内获取每一应用的第一配置文件。
在本申请其他实施例中,访问模块63,还用于获取待处理应用的第二配置文件;
基于第二配置文件,更新目标区域存储的第一配置文件为第三配置文件;其中,第三配置文件包括每一应用的第一配置文件和待处理应用的第二配置文件。
需要说明的是,本实施例中各个模块所执行的步骤的具体实现过程,可以参照图1~3对应的实施例提供的应用的运行和访问方法中的实现过程,此处不再赘述。
本申请的实施例所提供的应用的运行和访问装置,通过构建集成有数据管理插件和代理服务插件的目标容器,来同时运行和访问多个应用,合理地利用服务器资源,进而提高了服务器资源的使用率。
基于前述实施例,本申请的实施例还提供一种应用的运行和访问设备7,该应用的运行和访问设备7可以应用于图1~3对应的实施例提供的一种应用的运行和访问方法中,参照图7所示,该应用的运行和访问设备7可以包括:处理器71、存储器72和通信总线73,其中:
通信总线73用于实现处理器71和存储器72之间的通信连接。
处理器71用于执行存储器72中存储的应用的运行和访问方法的程序,以实现以下步骤:
构建集成有数据管理插件和代理服务插件的目标容器;其中,数据管理插件用于管理应用;代理服务插件用于访问应用;目标容器用于部署多个应用;
通过数据管理插件运行多个应用;
通过代理服务插件访问多个应用。
在本申请的其他实施例中,处理器71用于执行存储器72中存储的构建集成有数据管理插件和代理服务插件的目标容器,以实现以下步骤:
构建基础镜像;
创建数据管理插件对应的配置文件;
将配置文件导入基础镜像,并对基础镜像进行处理生成目标容器。
在本申请的其他实施例中,处理器71用于执行存储器72中存储的构建基础镜像,以实现以下步骤:
创建与目标容器对应的基本文件,并运行基本文件生成目标映像;
获取基础工具包、数据管理插件对应的第一资源以及代理服务插件对应的第二资源;其中,基础工具包包括构建目标容器所需的基础资源;
将基础工具包、第一资源和第二资源导入目标映像,生成基础镜像。
在本申请的其他实施例中,处理器71用于执行存储器72中存储的通过数据管理插件运行多个应用,以实现以下步骤:
通过数据管理插件获取每一应用的源文件;
通过数据管理插件对每一应用的源文件进行编译生成每一应用的目标代码,并基于每一应用的目标代码运行每一应用。
在本申请的其他实施例中,处理器71用于执行存储器72中存储的通过数据管理插件获取每一应用的源文件,以实现以下步骤:
获取每一应用的目标地址;
基于目标地址,通过数据管理插件获取每一应用的源文件。
在本申请的其他实施例中,处理器71用于执行存储器72中存储的通过代理服务插件访问多个应用,以实现以下步骤:
通过代理服务插件,获取每一应用的第一配置文件;
基于每一应用的第一配置文件,访问每一应用。
在本申请的其他实施例中,处理器71用于执行存储器72中存储的通过代理服务插件,获取每一应用的第一配置文件,以实现以下步骤:
获取目标容器的目标区域;其中,目标区域用于存储访问目标容器中每一应用所需的配置文件;
通过代理服务插件,从目标区域内获取每一应用的第一配置文件。
在本申请的其他实施例中,处理器71用于执行存储器72中存储的程序时,还可以执行以下步骤:
获取待处理应用的第二配置文件;
基于第二配置文件,更新目标区域存储的第一配置文件为第三配置文件;其中,第三配置文件包括每一应用的第一配置文件和待处理应用的第二配置文件。
需要说明的是,本实施例中处理器所执行的步骤的具体实现过程,可以参照图1~3对应的实施例提供的应用的运行和访问方法中的实现过程,此处不再赘述。
本申请的实施例所提供的应用的运行和访问设备,通过构建集成有数据管理插件和代理服务插件的目标容器,来同时运行和访问多个应用,合理地利用服务器资源,进而提高了服务器资源的使用率。
基于前述实施例,本申请的实施例提供一种计算机可读存储介质,计算机可读存储介质存储有一个或者多个程序,该一个或者多个程序可被一个或者多个处理器执行,以实现如图1~3对应的实施例提供的应用的运行和访问方法的步骤。
需要说明的是,上述计算机可读存储介质可以是只读存储器(Read Only Memory,ROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性随机存取存储器(Ferromagnetic Random Access Memory,FRAM)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(Compact Disc Read-Only Memory,CD-ROM)等存储器;也可以是包括上述存储器之一或任意组合的各种应用的运行和访问设备,如移动电话、计算机、平板设备、个人数字助理等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所描述的方法。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

Claims (11)

1.一种应用的运行和访问方法,其特征在于,所述方法包括:
构建集成有数据管理插件和代理服务插件的目标容器;其中,所述数据管理插件用于管理应用;所述代理服务插件用于访问应用;所述目标容器用于部署多个应用;
通过所述数据管理插件运行所述多个应用;
通过所述代理服务插件访问所述多个应用。
2.根据权利要求1所述的方法,其特征在于,所述构建集成有数据管理插件和代理服务插件的目标容器,包括:
构建基础镜像;
创建所述数据管理插件对应的配置文件;
将所述配置文件导入所述基础镜像,并对所述基础镜像进行处理生成所述目标容器。
3.根据权利要求2所述的方法,其特征在于,所述构建基础镜像,包括:
创建与所述目标容器对应的基本文件,并运行所述基本文件生成目标映像;
获取基础工具包、所述数据管理插件对应的第一资源以及所述代理服务插件对应的第二资源;其中,所述基础工具包包括构建所述目标容器所需的基础资源;
将所述基础工具包、所述第一资源和所述第二资源导入所述目标映像,生成所述基础镜像。
4.根据权利要求1所述的方法,其特征在于,所述通过所述数据管理插件运行所述多个应用,包括:
通过所述数据管理插件获取每一应用的源文件;
通过所述数据管理插件对所述每一应用的源文件进行编译生成所述每一应用的目标代码,并基于所述每一应用的目标代码运行所述每一应用。
5.根据权利要求4所述的方法,其特征在于,所述通过所述数据管理插件获取所述每一应用的源文件,包括:
获取所述每一应用的目标地址;
基于所述目标地址,通过所述数据管理插件获取所述每一应用的源文件。
6.根据权利要求1所述的方法,其特征在于,所述通过所述代理服务插件访问所述多个应用,包括:
通过所述代理服务插件,获取所述每一应用的第一配置文件;
基于所述每一应用的第一配置文件,访问所述每一应用。
7.根据权利要求6所述的方法,其特征在于,所述通过所述代理服务插件,获取所述每一应用的第一配置文件,包括:
获取所述目标容器的目标区域;其中,所述目标区域用于存储访问所述目标容器中每一应用所需的配置文件;
通过所述代理服务插件,从所述目标区域内获取所述每一应用的第一配置文件。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
获取待处理应用的第二配置文件;
基于所述第二配置文件,更新所述目标区域存储的第一配置文件为第三配置文件;其中,所述第三配置文件包括所述每一应用的第一配置文件和所述待处理应用的第二配置文件。
9.一种应用的运行和访问装置,其特征在于,所述装置包括:构建模块、运行模块和访问模块;
所述构建模块,用于构建集成有数据管理插件和代理服务插件的目标容器;其中,所述数据管理插件用于管理应用;所述代理服务插件用于访问应用;所述目标容器用于部署多个应用;
所述运行模块,用于通过所述数据管理插件运行所述多个应用;
所述访问模块,用于通过所述代理服务插件访问所述多个应用。
10.一种应用的运行和访问设备,其特征在于,所述应用的运行和访问设备包括:处理器、存储器和通信总线;
所述通信总线用于实现所述处理器和所述存储器之间的通信连接;
所述处理器用于执行所述存储器中的程序,以实现如权利要求1至8任一所述的应用的运行和访问方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1至8中任一项所述的应用的运行和访问方法的步骤。
CN202011121592.4A 2020-10-19 2020-10-19 一种应用的运行和访问方法、装置及设备 Pending CN113760442A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011121592.4A CN113760442A (zh) 2020-10-19 2020-10-19 一种应用的运行和访问方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011121592.4A CN113760442A (zh) 2020-10-19 2020-10-19 一种应用的运行和访问方法、装置及设备

Publications (1)

Publication Number Publication Date
CN113760442A true CN113760442A (zh) 2021-12-07

Family

ID=78785874

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011121592.4A Pending CN113760442A (zh) 2020-10-19 2020-10-19 一种应用的运行和访问方法、装置及设备

Country Status (1)

Country Link
CN (1) CN113760442A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114564250A (zh) * 2022-02-28 2022-05-31 天翼安全科技有限公司 一种读取配置方法及装置

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110265164A1 (en) * 2010-04-26 2011-10-27 Vmware, Inc. Cloud platform architecture
US20110265081A1 (en) * 2010-04-26 2011-10-27 Vmware, Inc. Droplet execution engine for dynamic server application deployment
CN104915239A (zh) * 2015-06-30 2015-09-16 北京奇虎科技有限公司 使用容器进行多进程启动的方法及装置
US20170052764A1 (en) * 2015-08-21 2017-02-23 Oracle International Corporation Pluggable components for runtime-image generation
CN107707607A (zh) * 2017-07-24 2018-02-16 上海壹账通金融科技有限公司 应用访问方法、装置、计算机设备和存储介质
US20180136951A1 (en) * 2016-11-16 2018-05-17 Vmware, Inc. Policy enabled application-release-management subsystem
CN108369622A (zh) * 2015-12-18 2018-08-03 亚马逊技术股份有限公司 软件容器注册表服务
CN108958927A (zh) * 2018-05-31 2018-12-07 康键信息技术(深圳)有限公司 容器应用的部署方法、装置、计算机设备和存储介质
CN108984268A (zh) * 2018-07-13 2018-12-11 郑州云海信息技术有限公司 Docker系统中容器管理的方法和装置
CN109309693A (zh) * 2017-07-26 2019-02-05 财付通支付科技有限公司 基于docker的多服务系统、部署方法及装置、设备及存储介质
CN111124596A (zh) * 2018-11-01 2020-05-08 千寻位置网络有限公司 基于容器的发布管理方法及其系统
CN111427949A (zh) * 2019-01-09 2020-07-17 杭州海康威视数字技术股份有限公司 一种创建大数据服务的方法及装置
CN111736956A (zh) * 2020-06-29 2020-10-02 苏州浪潮智能科技有限公司 一种容器服务部署方法、装置、设备及可读存储介质

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110265164A1 (en) * 2010-04-26 2011-10-27 Vmware, Inc. Cloud platform architecture
US20110265081A1 (en) * 2010-04-26 2011-10-27 Vmware, Inc. Droplet execution engine for dynamic server application deployment
CN104915239A (zh) * 2015-06-30 2015-09-16 北京奇虎科技有限公司 使用容器进行多进程启动的方法及装置
US20170052764A1 (en) * 2015-08-21 2017-02-23 Oracle International Corporation Pluggable components for runtime-image generation
CN108369622A (zh) * 2015-12-18 2018-08-03 亚马逊技术股份有限公司 软件容器注册表服务
US20180136951A1 (en) * 2016-11-16 2018-05-17 Vmware, Inc. Policy enabled application-release-management subsystem
CN107707607A (zh) * 2017-07-24 2018-02-16 上海壹账通金融科技有限公司 应用访问方法、装置、计算机设备和存储介质
CN109309693A (zh) * 2017-07-26 2019-02-05 财付通支付科技有限公司 基于docker的多服务系统、部署方法及装置、设备及存储介质
CN108958927A (zh) * 2018-05-31 2018-12-07 康键信息技术(深圳)有限公司 容器应用的部署方法、装置、计算机设备和存储介质
CN108984268A (zh) * 2018-07-13 2018-12-11 郑州云海信息技术有限公司 Docker系统中容器管理的方法和装置
CN111124596A (zh) * 2018-11-01 2020-05-08 千寻位置网络有限公司 基于容器的发布管理方法及其系统
CN111427949A (zh) * 2019-01-09 2020-07-17 杭州海康威视数字技术股份有限公司 一种创建大数据服务的方法及装置
CN111736956A (zh) * 2020-06-29 2020-10-02 苏州浪潮智能科技有限公司 一种容器服务部署方法、装置、设备及可读存储介质

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
杨迪;: "基于容器云的微服务系统", 电信科学, no. 09, 20 September 2018 (2018-09-20) *
涂刚;徐娟;: "Openstack与Docker融合的探究", 软件, no. 05, 15 May 2017 (2017-05-15) *
相铮;石春鹏;韩立新;: "Docker容器技术在MES系统部署中的应用", 制造业自动化, no. 04, 25 April 2020 (2020-04-25) *
郝若梦;陈榕;: "基于事件机制的嵌入式图形编程模型的研究", 计算机技术与发展, no. 10, 10 October 2007 (2007-10-10) *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114564250A (zh) * 2022-02-28 2022-05-31 天翼安全科技有限公司 一种读取配置方法及装置
CN114564250B (zh) * 2022-02-28 2023-10-31 天翼安全科技有限公司 一种读取配置方法及装置

Similar Documents

Publication Publication Date Title
US20210349706A1 (en) Release lifecycle management system for multi-node application
CN108229112B (zh) 一种保护应用程序、应用程序的运行方法以及装置
CN106559438B (zh) 一种基于目标网络平台的程序上传方法和装置
US8775577B1 (en) System and method for configuration management service
CN108964968B (zh) 一种容器云环境下的服务接入管理方法和系统
CN110727440B (zh) 一种软件封装方法
CN107665302B (zh) 一种Android应用多开实现方法、移动终端及存储介质
CN110673923A (zh) Xwiki系统配置方法、系统及计算机设备
CN113885849B (zh) 基于工业互联网平台的应用开发方法、装置及终端设备
CN110888655A (zh) 一种应用发布方法及装置
CN113760442A (zh) 一种应用的运行和访问方法、装置及设备
CN112256287A (zh) 一种应用部署方法及装置
CN110806935B (zh) 应用程序构建方法、装置和系统
CN115543486B (zh) 面向无服务器计算的冷启动延迟优化方法、装置和设备
Markomanolis et al. Time-Independent Trace Acquisition Framework--A Grid'5000 How-to
US8387040B2 (en) Dynamic creation of client-side environment for problem analysis
Vohra et al. Hello Docker
Papenfuss Containerizing a User-space Storage Framework for Reproducibility
CN115329227A (zh) 一种WebIDE中区块链智能合约编辑器文件管理方法和装置
Lamouchi Getting Started with Containerization
CN118051251A (zh) 软件开发工具包的接入方法、装置、电子设备及存储介质
CN115705289A (zh) 测试方法、Mock框架、用户设备、服务设备和存储介质
Hitchcock Containers
Kumaran S et al. Use Cases
Cardoso Linux based mobile: operating systems

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