CN110673923A - Xwiki***配置方法、***及计算机设备 - Google Patents
Xwiki***配置方法、***及计算机设备 Download PDFInfo
- Publication number
- CN110673923A CN110673923A CN201910841827.8A CN201910841827A CN110673923A CN 110673923 A CN110673923 A CN 110673923A CN 201910841827 A CN201910841827 A CN 201910841827A CN 110673923 A CN110673923 A CN 110673923A
- Authority
- CN
- China
- Prior art keywords
- xwiki
- image
- mirror image
- images
- container
- 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 38
- 238000004590 computer program Methods 0.000 claims description 10
- 238000004458 analytical method Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 claims description 6
- 238000012360 testing method Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000009434 installation Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 241000109539 Conchita Species 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 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
-
- 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
- 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
Abstract
本发明实施例提供了一种XWIKI***配置方法,所述方法包括:根据用户指令搭建容器引擎,所述容器引擎用于管理多个容器;根据预设规则从多个待选基础镜像中选择目标基础镜像;基于所述目标基础镜像配置XWIKI***的多个应用镜像;及基于各个应用镜像启动并运行相应的容器,以得到各个应用镜像对应的服务实例。本发明实施例可以在发生故障无需抢救数据并重新安装的技术问题,以及在数据搬迁到新服务器时也无需对新服务器进行新安装与配置。
Description
技术领域
本发明实施例涉及计算机数据处理领域,尤其涉及一种XWIKI***配置方法、***、计算机设备及计算机可读存储介质。
背景技术
WIKI是一个协作Web应用程序,允许最终用户添加和编辑内容。WIKI应用程序是指以标记语言编写的WIKI页面集合,这些页面通过超链接互连。WIKI服务器由WIKI服务器提供给作为WIKI客户端的标准Web浏览器。WIKI服务器还可以提供特殊的Web页面,该页面是用户添加和编辑内容的WIKI编辑器。一些WIKI站点允许根据WIKI语法编写WIKI内容,例如具有指示超链接内容的特殊字符,项目符号内容等。WIKI语法通常旨在使最终用户比标准标记语言更直观。
WIKI知识库在日常开发与维护中,扮演了知识的共享维护者的角色,且随着技术时代的更新换代,开始需要承担代码版本控制、社群的即时交流及机器人服务等职责。WIKI知识库一般藉由DOKUWIKI进行管理,DOKUWIKI为WIKI引擎程序,具有小巧灵便、无需数据库配合等优点。在现有技术中,DOKUWIKI直接安装在服务器中,具有维护困难等缺陷,例如:1、如果发生故障,需要抢救数据并重新安装;2、如果服务需要迁移至新服务器,而新版本DOKUWIKI又恰好经过重大升级不能兼容低版本,则需要极大人力资源与时间成本才能将所有原版本的文件与安装包收集起来,在新服务器上重新安装与配置。
发明内容
有鉴于此,本发明实施例的目的是提供一种XWIKI***配置方法、***、计算机设备及计算机可读存储介质,用于解决发生故障需要抢救数据并重新安装的技术问题,以及在新服务器上重新安装与配置的技术问题。
为实现上述目的,本发明实施例提供了一种XWIKI***配置方法,所述方法包括:
根据用户指令搭建容器引擎,所述容器引擎用于管理多个容器;
根据预设规则从多个待选基础镜像中选择目标基础镜像;
基于所述目标基础镜像配置XWIKI***的多个应用镜像;及
基于各个应用镜像启动并运行相应的容器,以得到各个应用镜像对应的服务实例。
优选地,根据用户指令搭建容器引擎的步骤,包括:
检测***环境信息及硬件信息,所述***环境信息包括网络配置参数、***类别和***版本,所述硬件信息包括CPU信息和内存信息;
将所述***环境信息和所述硬件信息发送至服务器,以使所述服务器根据所述***环境信息和硬件信息生成搭建脚本;
接收所述服务器返回的搭建脚本,所述搭建脚本用于引导搭建所述容器引擎;及
根据所述搭建脚本安装所述容器引擎。
优选地,根据预设规则从多个待选基础镜像中选择目标基础镜像的步骤,包括:
基于用户指令生成镜像列表,所述镜像列表中包括各个镜像文件以及每个镜像文件对应的仓库名、标签、镜像ID、创建时间和所占用空间;及
从所述镜像列表选择一个目标基础镜像,并执行针对该目标基础镜像的拿取指令,以从镜像仓库中获取所述目标基础镜像。
优选地,根据预设规则从多个待选基础镜像中选择目标基础镜像的步骤,包括:
接收用户通过用户图形接口输入的镜像需求描述信息;及
对所述镜像需求描述信息进行语义解析操作,并基于所述语义解析操作结果生成相应的目标拿取指令,以通过该目标拿取指令从所述镜像仓库中获取所述目标基础镜像。
优选地,所述多个应用镜像包括MYSQL镜像、XWIKI基础镜像、SOLR引擎镜像、NGINX均衡器镜像和/或网络抓包测试镜像。
优选地,基于各个应用镜像启动并运行相应的容器,以得到各个应用镜像对应的服务实例的步骤,包括:
基于所述MYSQL镜像启动并运行相应的第一容器,以得到对应的MYSQL集群实例;
基于所述XWIKI基础镜像启动并运行相应的第二容器,以得到对应的XWIKI实例;
基于所述SOLR镜像启动并运行相应的第三容器,以得到对应的SOLR搜索引擎实例;和/或
基于所述NGINX均衡器镜像启动并运行相应的第四容器,以得到对应的NGINX实例。
优选地,基于各个应用镜像启动并运行相应的容器,以得到各个应用镜像对应的服务实例的步骤,包括:
在所述XWIKI基础镜像中部署中间件,所述中间件包括libreoffice中间件和jgroups中间件,基于部署中间件的XWIKI基础镜像创建所述第二容器,以得到对应的XWIKI单实例;运行所述XWIKI单实例,并根据运行过程中产生的运行参数调试所述libreoffice中间件;如果所述XWIKI单实例运行成功,则运行XWIKI多节点集群,并根据XWIKI多节点集群的运行参数调试所述jgroups中间件。
为实现上述目的,本发明实施例还提供了一种XWIKI配置***,包括:
搭建模块,用于根据用户指令搭建容器引擎,所述容器引擎用于管理多个容器;
选择模块,用于根据预设规则从多个待选基础镜像中选择目标基础镜像;
配置模块,用于基于所述目标基础镜像配置XWIKI***的多个应用镜像;及
运行模块,用于基于各个应用镜像启动并运行相应的容器,以得到各个应用镜像对应的服务实例。
为实现上述目的,本发明实施例还提供了一种计算机设备,所述计算机设备存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被处理器执行时实现如上所述的XWIKI***配置方法的步骤。
为实现上述目的,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行如上所述的XWIKI***配置方法的步骤。
本发明实施例提供的XWIKI***配置方法、***、计算机设备及计算机可读存储介质,对XWIKI的架构进行了容器化配置,具备隔离性、资源消耗少、迁移效率高、重启速度快等技术优势,改造后的XWIKI***发生故障时,无需抢救数据并重新安装;且,迁移至新服务器,而新版本DOKUWIKI又恰好经过重大升级不能兼容低版本,以容器为单位整体迁移即可,无需在新服务器上重新安装与配置。
附图说明
图1为本发明XWIKI***配置方法实施例一的流程图。
图2为本发明XWIKI配置***实施例二的程序模块示意图。
图3为本发明计算机设备实施例三的硬件结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
XWIKI***,是基于Java等编程语言编写的开源WIKI***,其支持各种数据库,并就有优异的扩展性。
以下实施例将以计算机设备2为执行主体进行示例性描述。
实施例一
参阅图1,示出了本发明实施例一之XWIKI***配置方法的步骤流程图。可以理解,本方法实施例中的流程图不用于对执行步骤的顺序进行限定。具体如下。
步骤S100,根据用户指令搭建容器引擎,所述容器引擎用于管理多个容器。
所述容器引擎可以为Docker社区版本,其提供的容器技术可以在同一台主机或虚拟机上运行若干个容器(container),每个容器为一个独立的虚拟环境或应用。
在示例性的实施例中,所述步骤S100可以包括以下步骤:
(1)检测计算机设备2的***环境信息及硬件信息,所述***环境信息包括网络配置参数、***类别、***版本等,所述硬件信息包括CPU信息、内存条信息等;
(2)将所述***环境信息和硬件信息发送至服务器,以使所述服务器根据所述***环境信息和硬件信息生成搭建脚本;
(3)接收所述服务器返回的搭建脚本;
(4)根据所述搭建脚本安装Docker;
其中,所述搭建脚本用于引导计算机设备搭建Docker。具体的:(a)安装HTTPS CA证书;(b)添加Docker官方软件源的GPG key;(c)将Docker APT源添加到列表中,并在Docker APT源被添加成功之后,更新APT软件包缓存;(d)从更新后的APT软件包缓存中获取Docker镜像,并安装所述Docker镜像。
步骤S102,根据预设规则从多个待选基础镜像中选择目标基础镜像。
所述预设规则可以为:根据各个待选基础镜像的安装硬件环境最低需求来适配和选择目标基础镜像,根据计算机设备2的硬件环境来配置和选择目标基础镜像,或则根据用途等其他规则来选择目标基础镜像。
多个待选基础镜像,被预存与镜像仓库中,用于为应用程序提供依赖包。所述多个待选基础镜像包括:centos、suze、debian、alpine等。示例性的,可以选择alpine作为目标基础镜像,其优势在于体积小,且携带有优秀的软件步骤仓库。
在示例性的实施例中,所述步骤S102可以包括以下步骤:基于用户指令生成镜像列表,所述镜像列表中包括各个镜像文件以及每个镜像文件对应的仓库名、标签、镜像ID、创建时间和所占用空间;及从所述镜像列表选择一个目标基础镜像,并执行针对该目标基础镜像的拿取指令,以从镜像仓库中获取所述目标基础镜像。
在示例性的实施例中,所述步骤S102可以包括以下步骤:接收用户通过用户图形接口输入的镜像需求描述信息;及对所述镜像需求描述信息进行语义解析操作,并基于所述语义解析操作结果生成相应的目标拿取指令,以通过该目标拿取指令从所述镜像仓库中获取所述目标基础镜像。
步骤S104,基于所述目标基础镜像配置XWIKI***的多个应用镜像。
所述多个应用镜像包括MYSQL镜像、XWIKI基础镜像、SOLR引擎镜像、NGINX均衡器镜像、网络抓包测试镜像等;
例如,以Alpine为目标基础镜像,可以通过Dockerfile文件配置所述多个应用镜像。具体的,开启Docker守护进程执行Dockerfile文件中的一序列指令,以生成相应的应用镜像,所述Dockerfile是一个文本文件,其由多个元素构成,例如:目标基础镜像的指定指令;需要复制到应用镜像的文件;网络端口;构建所述应用镜像是运行的多条指令,如FROM、RUN等指令,FROM指令用于指定基础镜像,RUN用于执行命令行命令;同时所述应用镜像启动容器时设置的环境变量;以及容器启动时运行的指令。
步骤S106,基于各个应用镜像启动并运行相应的容器,以得到各个应用镜像对应的服务实例。
示例性的,可以基于相应的应用镜像新建一个容器并启动,或者将处于终止状态的容器重新启动;具体的,创建容器时:检查本地是否存在相应的应用镜像;通过所述应用镜像创建并启动一个容器;分配一个文件***,并在只读的镜像层外面挂载一层可读写层从计算机设备配置的网桥接口中桥接一个虚拟接口到容器中;从地址池配置一个IP地址给容器;执行用户指定的应用程序;执行完毕后容器被终止。
在示例性的实施例中,所述步骤S106可以包括以下步骤:
(1)基于所述MYSQL镜像启动并运行相应的第一容器,以得到对应的MYSQL集群实例;
创建一个新的集群实例,并新建指定数量的节点,如Swarm集群和Kubernetes集群。
(2)基于所述XWIKI基础镜像启动并运行相应的第二容器,以得到对应的XWIKI实例;具体的:修改xwiki.cfg,开启superadmin;修改hibernate.hbm.xml,启动mysql数据库连接;需要在mysql中建立数据库xwiki,且授予相关的权限。
进一步的:
在所述XWIKI基础镜像中部署中间件,如libreoffice中间件、jgroups中间件等,基于部署中间件的XWIKI基础镜像创建所述第二容器,以得到对应的XWIKI单实例;运行所述XWIKI单实例,并根据运行过程中产生的运行参数调试所述libreoffice中间件;如果所述XWIKI单实例运行成功,则运行XWIKI多节点集群,并根据XWIKI多节点集群的运行参数调试所述jgroups中间件。
JGroups是一个为集群通讯类库,应用可以用JGroups加入一个集群,发送消息给集群中的其他节点,同时也可以在集群节点离开或者加入集群的时候获得通知。在JGroups中JChannel类提供了主要的API,用于连接到集群(cluster)、发送和接收消息(Message)和注册listeners等;
以加入集群为例,可以创建一个channal并调用connect()方法来加入集群;所述channal的配置信息可以根据需求在文件udp.xml中进行定义,所述配置信息作为构造函数的参数传入。
具体的,可以通过协议栈配置来调试jgroups中间件:用户可以输入自己编写的协议,并将它们添加到配置中。
(3)基于所述SOLR镜像启动并运行相应的第三容器,以得到对应的SOLR搜索引擎实例;
(4)基于所述NGINX均衡器镜像启动并运行相应的第四容器,以得到对应的NGINX实例;
具体的,根据用户指令为第四容器配置参数,所述参数包括命名、映射端口80等。当所述第四容器处于运行状态中时,接收外部设备通过80端口的访问请求信息,并反馈相应的响应信息。
在示例性的实施例中,还可以配置网络服务发现框架,所述网络服务发现框架用于确定服务实例的网络位置。
XWIKI数据平台从互联网上时刻得到新功能的补充,能在很长时间内保障使用需求。但数据之间的迭代损失与递归耦合现象,会随时间变得越发严重,一个可横向扩展的容器架构才能支撑数据的***性增长,因此可以通过配置网络服务发现框架。基于网络服务发现框架在另一台服务器进行纵向或横向的扩容。
实施例二
请继续参阅图2,示出了本发明XWIKI配置***实施例二的程序模块示意图。在本实施例中,XWIKI配置***20可以包括或被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本发明,并可实现上述XWIKI***配置方法。本发明实施例所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序本身更适合于描述XWIKI配置***20在存储介质中的执行过程。以下描述将具体介绍本实施例各程序模块的功能:
搭建模块200,用于根据用户指令搭建容器引擎,所述容器引擎用于管理多个容器。所述容器引擎可以为Docker社区版本,其提供的容器技术可以在同一台主机或虚拟机上运行若干个容器(container),每个容器为一个独立的虚拟环境或应用。
选择模块202,用于根据预设规则从多个待选基础镜像中选择目标基础镜像。多个待选基础镜像,被预存与镜像仓库中,用于为应用程序提供依赖包。所述多个待选基础镜像包括:centos、suze、debian、alpine等。示例性的,可以选择alpine作为目标基础镜像,其优势在于体积小,且携带有优秀的软件步骤仓库。
配置模块204,用于基于所述目标基础镜像配置XWIKI***的多个应用镜像。例如,以Alpine为目标基础镜像,可以通过Dockerfile文件配置所述多个应用镜像。具体的,开启Docker守护进程执行Dockerfile文件中的一序列指令,以生成相应的应用镜像,所述Dockerfile是一个文本文件,其由多个元素构成,例如:目标基础镜像的指定指令;需要复制到应用镜像的文件;网络端口;构建所述应用镜像是运行的多条指令,如FROM、RUN等指令,FROM指令用于指定基础镜像,RUN用于执行命令行命令;同时所述应用镜像启动容器时设置的环境变量;以及容器启动时运行的指令。
运行模块206,用于基于各个应用镜像启动并运行相应的容器,以得到各个应用镜像对应的服务实例。示例性的,可以基于相应的应用镜像新建一个容器并启动,或者将处于终止状态的容器重新启动;具体的,创建容器时:检查本地是否存在相应的应用镜像;通过所述应用镜像创建并启动一个容器;分配一个文件***,并在只读的镜像层外面挂载一层可读写层从计算机设备配置的网桥接口中桥接一个虚拟接口到容器中;从地址池配置一个IP地址给容器;执行用户指定的应用程序;执行完毕后容器被终止。
在示例性的实施例中,搭建模块200,还用于:检测***环境信息及硬件信息,所述***环境信息包括网络配置参数、***类别和***版本,所述硬件信息包括CPU信息和内存信息;将所述***环境信息和所述硬件信息发送至服务器,以使所述服务器根据所述***环境信息和硬件信息生成搭建脚本;接收所述服务器返回的搭建脚本,所述搭建脚本用于引导搭建所述容器引擎;及根据所述搭建脚本安装所述容器引擎。
在示例性的实施例中,选择模块202,还用于:基于用户指令生成镜像列表,所述镜像列表中包括各个镜像文件以及每个镜像文件对应的仓库名、标签、镜像ID、创建时间和所占用空间;及从所述镜像列表选择一个目标基础镜像,并执行针对该目标基础镜像的拿取指令,以从镜像仓库中获取所述目标基础镜像。
在示例性的实施例中,选择模块202,还用于:接收用户通过用户图形接口输入的镜像需求描述信息;及对所述镜像需求描述信息进行语义解析操作,并基于所述语义解析操作结果生成相应的目标拿取指令,以通过该目标拿取指令从所述镜像仓库中获取所述目标基础镜像。
在示例性的实施例中,所述多个应用镜像包括MYSQL镜像、XWIKI基础镜像、SOLR引擎镜像、NGINX均衡器镜像和/或网络抓包测试镜像。
在示例性的实施例中,运行模块206,还用于:基于所述MYSQL镜像启动并运行相应的第一容器,以得到对应的MYSQL集群实例;基于所述XWIKI基础镜像启动并运行相应的第二容器,以得到对应的XWIKI实例;基于所述SOLR镜像启动并运行相应的第三容器,以得到对应的SOLR搜索引擎实例;和/或基于所述NGINX均衡器镜像启动并运行相应的第四容器,以得到对应的NGINX实例。
在示例性的实施例中,运行模块206,还用于:在所述XWIKI基础镜像中部署中间件,所述中间件包括libreoffice中间件和jgroups中间件,基于部署中间件的XWIKI基础镜像创建所述第二容器,以得到对应的XWIKI单实例;运行所述XWIKI单实例,并根据运行过程中产生的运行参数调试所述libreoffice中间件;如果所述XWIKI单实例运行成功,则运行XWIKI多节点集群,并根据XWIKI多节点集群的运行参数调试所述jgroups中间件。
JGroups是一个为集群通讯类库,应用可以用JGroups加入一个集群,发送消息给集群中的其他节点,同时也可以在集群节点离开或者加入集群的时候获得通知。在JGroups中JChannel类提供了主要的API,用于连接到集群(cluster)、发送和接收消息(Message)和注册listeners等;
以加入集群为例,可以创建一个channal并调用connect()方法来加入集群;所述channal的配置信息可以根据需求在文件udp.xml中进行定义,所述配置信息作为构造函数的参数传入。
具体的,可以通过协议栈配置来调试jgroups中间件:用户可以输入自己编写的协议,并将它们添加到配置中。
实施例三
参阅图3,是本发明实施例三之计算机设备的硬件架构示意图。本实施例中,所述计算机设备2是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。该计算机设备2可以是机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图所示,所述计算机设备2至少包括,但不限于,可通过***总线相互通信连接存储器21、处理器22、网络接口23、以及XWIKI配置***20。其中:
本实施例中,存储器21至少包括一种类型的计算机可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器21可以是计算机设备2的内部存储单元,例如该计算机设备2的硬盘或内存。在另一些实施例中,存储器21也可以是计算机设备2的外部存储设备,例如该计算机设备20上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器21还可以既包括计算机设备2的内部存储单元也包括其外部存储设备。本实施例中,存储器21通常用于存储安装于计算机设备2的操作***和各类应用软件,例如实施例二的XWIKI配置***20的程序代码等。此外,存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器22在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器22通常用于控制计算机设备2的总体操作。本实施例中,处理器22用于运行存储器21中存储的程序代码或者处理数据,例如运行XWIKI配置***20,以实现实施例一的XWIKI***配置方法。
所述网络接口23可包括无线网络接口或有线网络接口,该网络接口23通常用于在所述计算机设备2与其他电子装置之间建立通信连接。例如,所述网络接口23用于通过网络将所述计算机设备2与外部终端相连,在所述计算机设备2与外部终端之间的建立数据传输通道和通信连接等。所述网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯***(Global System of Mobile communication,GSM)、宽带码分多址(WidebandCode Division Multiple Access,WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi等无线或有线网络。
需要指出的是,图3仅示出了具有部件20-23的计算机设备2,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
在本实施例中,存储于存储器21中的所述XWIKI配置***20还可以被分割为一个或者多个程序模块,所述一个或者多个程序模块被存储于存储器21中,并由一个或多个处理器(本实施例为处理器22)所执行,以完成本发明。
例如,图2示出了所述实现XWIKI配置***20实施例二的程序模块示意图,该实施例中,所述基于XWIKI配置***20可以被划分为搭建模块200、选择模块202、配置模块204和运行模块206。其中,本发明所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序更适合于描述所述XWIKI配置***20在所述计算机设备2中的执行过程。所述程序模块200-206的具体功能在实施例二中已有详细描述,在此不再赘述。
实施例四
本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相应功能。本实施例的计算机可读存储介质用于存储XWIKI配置***20,被处理器执行时实现实施例一的XWIKI***配置方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种XWIKI***配置方法,其特征在于,所述方法包括:
根据用户指令搭建容器引擎,所述容器引擎用于管理多个容器;
根据预设规则从多个待选基础镜像中选择目标基础镜像;
基于所述目标基础镜像配置XWIKI***的多个应用镜像;及
基于各个应用镜像启动并运行相应的容器,以得到各个应用镜像对应的服务实例。
2.根据权利要求1所述的XWIKI***配置方法,其特征在于,根据用户指令搭建容器引擎的步骤,包括:
检测***环境信息及硬件信息,所述***环境信息包括网络配置参数、***类别和***版本,所述硬件信息包括CPU信息和内存信息;
将所述***环境信息和所述硬件信息发送至服务器,以使所述服务器根据所述***环境信息和硬件信息生成搭建脚本;
接收所述服务器返回的搭建脚本,所述搭建脚本用于引导搭建所述容器引擎;及
根据所述搭建脚本安装所述容器引擎。
3.根据权利要求2所述的XWIKI***配置方法,其特征在于,根据预设规则从多个待选基础镜像中选择目标基础镜像的步骤,包括:
基于用户指令生成镜像列表,所述镜像列表中包括各个镜像文件以及每个镜像文件对应的仓库名、标签、镜像ID、创建时间和所占用空间;及
从所述镜像列表选择一个目标基础镜像,并执行针对该目标基础镜像的拿取指令,以从镜像仓库中获取所述目标基础镜像。
4.根据权利要求3所述的XWIKI***配置方法,其特征在于,根据预设规则从多个待选基础镜像中选择目标基础镜像的步骤,包括:
接收用户通过用户图形接口输入的镜像需求描述信息;及
对所述镜像需求描述信息进行语义解析操作,并基于所述语义解析操作结果生成相应的目标拿取指令,以通过该目标拿取指令从所述镜像仓库中获取所述目标基础镜像。
5.根据权利要求3所述的XWIKI***配置方法,其特征在于,所述多个应用镜像包括MYSQL镜像、XWIKI基础镜像、SOLR引擎镜像、NGINX均衡器镜像和/或网络抓包测试镜像。
6.根据权利要求5所述的XWIKI***配置方法,其特征在于,基于各个应用镜像启动并运行相应的容器,以得到各个应用镜像对应的服务实例的步骤,包括:
基于所述MYSQL镜像启动并运行相应的第一容器,以得到对应的MYSQL集群实例;
基于所述XWIKI基础镜像启动并运行相应的第二容器,以得到对应的XWIKI实例;
基于所述SOLR镜像启动并运行相应的第三容器,以得到对应的SOLR搜索引擎实例;和/或
基于所述NGINX均衡器镜像启动并运行相应的第四容器,以得到对应的NGINX实例。
7.根据权利要求6所述的XWIKI***配置方法,其特征在于,基于各个应用镜像启动并运行相应的容器,以得到各个应用镜像对应的服务实例的步骤,包括:
在所述XWIKI基础镜像中部署中间件,所述中间件包括libreoffice中间件和jgroups中间件,基于部署中间件的XWIKI基础镜像创建所述第二容器,以得到对应的XWIKI单实例;运行所述XWIKI单实例,并根据运行过程中产生的运行参数调试所述libreoffice中间件;如果所述XWIKI单实例运行成功,则运行XWIKI多节点集群,并根据XWIKI多节点集群的运行参数调试所述jgroups中间件。
8.一种XWIKI配置***,其特征在于,包括:
搭建模块,用于根据用户指令搭建容器引擎,所述容器引擎用于管理多个容器;
选择模块,用于根据预设规则从多个待选基础镜像中选择目标基础镜像;
配置模块,用于基于所述目标基础镜像配置XWIKI***的多个应用镜像;及
运行模块,用于基于各个应用镜像启动并运行相应的容器,以得到各个应用镜像对应的服务实例。
9.一种计算机设备,所述计算机设备存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的XWIKI***配置方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行如权利要求1至7中任一项所述的XWIKI***配置方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910841827.8A CN110673923A (zh) | 2019-09-06 | 2019-09-06 | Xwiki***配置方法、***及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910841827.8A CN110673923A (zh) | 2019-09-06 | 2019-09-06 | Xwiki***配置方法、***及计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110673923A true CN110673923A (zh) | 2020-01-10 |
Family
ID=69076662
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910841827.8A Pending CN110673923A (zh) | 2019-09-06 | 2019-09-06 | Xwiki***配置方法、***及计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110673923A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111125003A (zh) * | 2019-11-25 | 2020-05-08 | 中科边缘智慧信息科技(苏州)有限公司 | 一种容器镜像轻量化及快速分发方法 |
CN111432006A (zh) * | 2020-03-30 | 2020-07-17 | 中科九度(北京)空间信息技术有限责任公司 | 一种轻量级资源虚拟化与分配方法 |
CN114090183A (zh) * | 2021-11-25 | 2022-02-25 | 北京字节跳动网络技术有限公司 | 一种应用启动方法、装置、计算机设备和存储介质 |
CN114217908A (zh) * | 2022-02-23 | 2022-03-22 | 广州趣丸网络科技有限公司 | 容器启动方法、***、装置及设备 |
CN115617421A (zh) * | 2022-12-05 | 2023-01-17 | 深圳市欧瑞博科技股份有限公司 | 进程智能调度方法、装置、可读存储介质及嵌入式设备 |
CN116034362A (zh) * | 2020-07-27 | 2023-04-28 | 西门子股份公司 | 容器镜像的扩展的完整性监视 |
CN116166473A (zh) * | 2023-02-27 | 2023-05-26 | 北京远舢智能科技有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN116501652A (zh) * | 2023-06-29 | 2023-07-28 | 绿城科技产业服务集团有限公司 | 基于saas***的可持续集成的自动化测试方法及*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140225977A1 (en) * | 2005-03-01 | 2014-08-14 | EyesMatch Ltd. | Devices, systems and methods of virtualizing a mirror |
US20170052807A1 (en) * | 2014-02-20 | 2017-02-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods, apparatuses, and computer program products for deploying and managing software containers |
CN110058863A (zh) * | 2019-03-16 | 2019-07-26 | 平安城市建设科技(深圳)有限公司 | Docker容器的构建方法、装置、设备及存储介质 |
-
2019
- 2019-09-06 CN CN201910841827.8A patent/CN110673923A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140225977A1 (en) * | 2005-03-01 | 2014-08-14 | EyesMatch Ltd. | Devices, systems and methods of virtualizing a mirror |
US20170052807A1 (en) * | 2014-02-20 | 2017-02-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods, apparatuses, and computer program products for deploying and managing software containers |
CN110058863A (zh) * | 2019-03-16 | 2019-07-26 | 平安城市建设科技(深圳)有限公司 | Docker容器的构建方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
董泽: "基于容器的任务卸载技术研究", 中国优秀硕士学位论文全文数据库信息科技辑(月刊), no. 02, pages 138 - 709 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111125003A (zh) * | 2019-11-25 | 2020-05-08 | 中科边缘智慧信息科技(苏州)有限公司 | 一种容器镜像轻量化及快速分发方法 |
CN111125003B (zh) * | 2019-11-25 | 2024-01-26 | 中科边缘智慧信息科技(苏州)有限公司 | 一种容器镜像轻量化及快速分发方法 |
CN111432006A (zh) * | 2020-03-30 | 2020-07-17 | 中科九度(北京)空间信息技术有限责任公司 | 一种轻量级资源虚拟化与分配方法 |
CN116034362A (zh) * | 2020-07-27 | 2023-04-28 | 西门子股份公司 | 容器镜像的扩展的完整性监视 |
CN116034362B (zh) * | 2020-07-27 | 2024-04-23 | 西门子股份公司 | 容器镜像的扩展的完整性监视 |
CN114090183A (zh) * | 2021-11-25 | 2022-02-25 | 北京字节跳动网络技术有限公司 | 一种应用启动方法、装置、计算机设备和存储介质 |
CN114217908A (zh) * | 2022-02-23 | 2022-03-22 | 广州趣丸网络科技有限公司 | 容器启动方法、***、装置及设备 |
CN115617421A (zh) * | 2022-12-05 | 2023-01-17 | 深圳市欧瑞博科技股份有限公司 | 进程智能调度方法、装置、可读存储介质及嵌入式设备 |
CN116166473A (zh) * | 2023-02-27 | 2023-05-26 | 北京远舢智能科技有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN116501652A (zh) * | 2023-06-29 | 2023-07-28 | 绿城科技产业服务集团有限公司 | 基于saas***的可持续集成的自动化测试方法及*** |
CN116501652B (zh) * | 2023-06-29 | 2023-09-12 | 绿城科技产业服务集团有限公司 | 基于saas***的可持续集成的自动化测试方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110673923A (zh) | Xwiki***配置方法、***及计算机设备 | |
CN106559438B (zh) | 一种基于目标网络平台的程序上传方法和装置 | |
WO2022170801A1 (zh) | iOS应用程序构建方法及装置、电子设备及存储介质 | |
CN105490860A (zh) | 部署应用程序运行环境的方法、装置及*** | |
US20060265469A1 (en) | XML based scripting framework, and methods of providing automated interactions with remote systems | |
CN106294113B (zh) | 一种基于可编程式测试服务的创建方法及装置 | |
CN111580926A (zh) | 模型发布方法、模型部署方法、装置、设备及存储介质 | |
CN105704188A (zh) | 应用与服务的部署方法和装置 | |
US20210064351A1 (en) | Packaging support system and packaging support method | |
CN111414391A (zh) | 一种访问多数据源的方法及*** | |
CN111190823A (zh) | Ui自动化测试方法、电子装置及计算机可读存储介质 | |
CN111782730B (zh) | 一种文件上传方法、装置及存储介质 | |
CN113127150A (zh) | 云原生***的快速部署方法、装置、电子设备和存储介质 | |
CN112860251A (zh) | 一种网站前端构建的方法与*** | |
CN117112122A (zh) | 一种集群部署方法和装置 | |
CN110727575B (zh) | 一种信息处理方法、***、装置、以及存储介质 | |
US20230418623A1 (en) | Application remodeling method, system, cluster, medium, and program product | |
CN110083366B (zh) | 应用运行环境的生成方法、装置、计算设备及存储介质 | |
CN111831567B (zh) | 应用的测试环境配置方法、装置、***和介质 | |
CN110806891B (zh) | 嵌入式设备软件版本的生成方法及装置 | |
CN112685040A (zh) | 安卓***中界面文件的生成方法、装置、设备及存储介质 | |
CN104111862A (zh) | 云计算平台中获取虚拟机ip地址方法与*** | |
CN116450165A (zh) | 一种快速搭建环境及部署程序的方法、***、终端及存储介质 | |
CN114003250A (zh) | 一种软件部署方法及装置 | |
CN109783756B (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 |