CN113032104A - 一种部署k8s容器应用的方法和装置 - Google Patents
一种部署k8s容器应用的方法和装置 Download PDFInfo
- Publication number
- CN113032104A CN113032104A CN202110416722.5A CN202110416722A CN113032104A CN 113032104 A CN113032104 A CN 113032104A CN 202110416722 A CN202110416722 A CN 202110416722A CN 113032104 A CN113032104 A CN 113032104A
- Authority
- CN
- China
- Prior art keywords
- application
- container
- type
- container application
- control
- 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 41
- 238000004590 computer program Methods 0.000 claims description 12
- 238000004806 packaging method and process Methods 0.000 claims description 9
- 238000009826 distribution Methods 0.000 claims description 4
- 238000013515 script Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 238000003860 storage Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012856 packing 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
-
- 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/45591—Monitoring or debugging support
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及一种部署k8s容器应用的方法和装置,该方法包括:在宿主机服务器上搭建运行环境;基于k8s集群部署控制型k8s容器应用;在控制型k8s容器应用中创建应用型k8s容器应用;在控制型k8s容器应用中实现应用型k8s容器应用的部署。本申请提供的技术方案,不仅在部署多个容器应用时,可简化部署步骤;还解放了在宿主机上的操作,让所有应用层的操作都在控制型k8s容器中执行,应用型应用的上线与下线一键操作,减少错误率。
Description
技术领域
本发明属于容器应用技术领域,具体涉及一种部署k8s容器应用的方法和装置。
背景技术
传统方式部署项目可能存在这样一种场景,开发者把代码从开发环境提交到测试环境然后到更上层的环境。比如开发者在Windows上编写应用代码,但是上层环境(测试、stage或是生产环境)是基于Linux的。在这种情况下,当操作系统变化时,应用的某些功能可能就会出现问题。所以,一般当配套软件环境不一样的时候,间歇性故障的几率就会更大。
容器的出现就解决了这个问题。容器封装了所有运行应用程序所必需的相关的细节比如应用依赖以及操作系统。这就使得镜像从一个环境移植到另外一个环境更加灵活。比如,同一个镜像可以在Windows或Linux或者开发、测试或stage环境中运行。
当前部署容器应用的方法比较多,例如,基于docker部署应用:使用docker部署应用时,开发者可以打包他们的应用以及依赖到一个容器中,发布到流行的liunx系统上。但是docker有其自身的缺陷,部署多个容器应用时,需进行重复操作。
发明内容
有鉴于此,本发明的目的在于克服现有技术的不足,提供一种部署k8s容器应用的方法和装置,以解决现有技术中部署多个容器应用时,需进行重复操作的问题。
根据本申请实施例的第一方面,提供部署k8s容器应用的方法,所述方法包括:
在宿主机服务器上搭建运行环境;
基于k8s集群部署控制型k8s容器应用;
在控制型k8s容器应用中创建应用型k8s容器应用;
在控制型k8s容器应用中实现应用型k8s容器应用的部署。
进一步的,所述在宿主机服务器上搭建运行环境,包括:
步骤11:使用kubeadm方法部署所述k8s集群;
步骤12:部署gitlab服务,用于存放应用的程序文件;
步骤13:部署harbor服务,用于存放容器应用的镜像文件;
步骤14:部署jenkins平台与gitlab打通,以及配置当向gitlab提交程序时触发jenkins;
步骤15:部署nfs服务,用于为容器创建挂载目录。
进一步的,所述基于k8s集群部署控制型k8s容器应用,包括:
步骤21:在所述宿主机服务器上为应用型k8s容器应用创建nfs挂载目录;
步骤22:编写控制型k8s容器应用的yaml文件;
步骤23:编写控制型k8s容器应用的Dockerfile文件,并把所述控制型k8s容器应用的Dockerfile文件放在控制型k8s容器应用程序的目录下;
步骤24:利用所述gitlab服务创建gitlab仓库,将控制型k8s容器应用的程序文件提交到gitlab仓库;
步骤25:利用所述harbor服务创建第一harbor仓库,用于存放控制型k8s容器应用的镜像文件;
步骤26:在所述jenkins平台为控制型k8s容器应用创建jenkins项目。
进一步的,所述步骤22,包括:
步骤221:挂载宿主机docker命令和宿主机k8s命令;
步骤222:挂载所述应用型k8s容器应用的nfs挂载目录。
进一步的,所述步骤26,包括:
步骤261:从所述gitlab平台拉取控制型k8s容器应用的程序文件;
步骤262:把所述控制型k8s容器应用的程序文件和所述控制型k8s容器应用的Dockerfile文件进行编译,并将所述控制型k8s容器应用的程序文件和所述控制型k8s容器应用的Dockerfile文件打包成镜像文件,将所述镜像文件推送所述第一harbor仓库;
步骤263:运行所述控制型k8s容器应用的yaml文件,以从所述第一harbor仓库中获取步骤262中的镜像文件,并利用所述镜像文件部署控制型k8s容器应用。
进一步的,所述在控制型k8s容器应用中创建应用型k8s容器应用,包括:
步骤31:利用所述控制型k8s容器应用的后台,创建所述应用型k8s容器应用;
步骤32:将所述应用型k8s容器应用的相关文件输出至所述应用型k8s容器应用的nfs挂载目录。
进一步的,所述在控制型k8s容器应用中实现应用型k8s容器应用的部署,包括:
步骤41:利用所述harbor服务创建第二harbor仓库,用于存放应用型k8s容器应用的镜像文件;
步骤42:编写应用型k8s容器应用的Dockerfile文件,并把所述应用型k8s容器应用的Dockerfile文件放到所述应用型k8s容器应用的nfs挂载目录;
步骤43:编写并执行脚本,用于使用挂载的所述宿主机docker命令将所述应用型k8s容器应用的Dockerfile文件和所述应用型k8s容器应用的nfs挂载目录打包成镜像文件;
步骤44:将步骤43中的所述镜像文件推送到所述第二harbor仓库;
步骤45:编写应用型k8s容器应用的yaml文件,并用挂载的所述宿主机k8s命令运行所述应用型k8s容器应用的yaml文件,以从所述第二harbor仓库中读取步骤43中的所述镜像文件,并将所述镜像文件发布成应用型k8s容器应用。
根据本申请实施例的第二方面,提供一种部署k8s容器应用的装置,所述装置包括:
初始化单元,用于在宿主机服务器上搭建运行环境;
部署单元,用于基于k8s集群部署控制型k8s容器应用;
创建单元,用于在控制型k8s容器应用中创建应用型k8s容器应用;
实现单元,用于在控制型k8s容器应用中实现应用型k8s容器应用的部署。
根据本申请实施例的第二方面,提供一种电子设备,包括处理器以及存储器,所述存储器存储有计算机介质,上所述计算机介质由所述处理器执行时,运行上述任一技术方案所述的代码发布方法。
根据本申请实施例的第二方面,提供一种计算机介质,所述计算机介质上存储有计算机程序,所述计算机程序被处理器运行时执行任一技术方案所述的代码发布方法。
本发明采用以上技术方案,能够达到的有益效果包括:通过在宿主机服务器上搭建运行环境,基于k8s集群部署控制型k8s容器应用,在控制型k8s容器应用中创建应用型k8s容器应用,在控制型k8s容器应用中实现应用型k8s容器应用的部署,实现部署k8s容器应用,不仅在部署多个容器应用时,可简化部署步骤;还解放了在宿主机上的操作,让所有应用层的操作都在控制型k8s容器中执行,应用型应用的上线与下线一键操作,减少错误率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的一种部署k8s容器应用的方法的流程图;
图2是根据一示例性实施例示出的一种部署k8s容器应用的方法的流程图;
图3是根据一示例性实施例示出的是一种部署k8s容器应用的装置的框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的技术方案进行详细的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本发明所保护的范围。
图1是根据一示例性实施例示出的一种部署k8s容器应用的方法的流程图,如图1所示,该方法可以但不限于用于终端中,包括以下步骤:
步骤1:在宿主机服务器上搭建运行环境;
步骤2:基于k8s集群部署控制型k8s容器应用;
步骤3:在控制型k8s容器应用中创建应用型k8s容器应用;
步骤4:在控制型k8s容器应用中实现应用型k8s容器应用的部署。
一些可选实施例中,参见图2,步骤1可以通过但不限于以下过程实现:
步骤1.1:使用kubeadm方法部署k8s集群;
步骤1.2:部署gitlab服务,用于存放应用的程序文件;
步骤1.3:部署harbor服务,用于存放容器应用的镜像文件;
步骤1.4:部署jenkins平台与gitlab打通,以及配置当向gitlab提交程序时触发jenkins;
步骤1.5:部署nfs服务,用于为容器创建挂载目录。
需要说明的是,本发明实施例涉及的“kubeadm方法、gitlab服务、harbor服务和jenkins平台”是本领域技术人员所熟知的,因此,其具体实现方式不做过多描述。
一些可选实施例中,参见图2,步骤2可以通过但不限于以下过程实现:
步骤2.1:在宿主机服务器上为应用型k8s容器应用创建nfs挂载目录;
步骤2.2:编写控制型k8s容器应用的yaml文件;
步骤2.3:编写控制型k8s容器应用的Dockerfile文件,并把控制型k8s容器应用的Dockerfile文件放在控制型k8s容器应用程序的目录下;
步骤2.4:利用gitlab服务创建gitlab仓库,将控制型k8s容器应用的程序文件提交到gitlab仓库;
步骤2.5:利用harbor服务创建第一harbor仓库,用于存放控制型k8s容器应用的镜像文件;
步骤2.6:在jenkins平台为控制型k8s容器应用创建jenkins项目。
具体可选的,步骤2.2,包括:
步骤2.2.1:挂载宿主机docker命令和宿主机k8s命令;
步骤2.2.2:挂载应用型k8s容器应用的nfs挂载目录。
需要说明的是,挂载宿主机docker命令和宿主机k8s命令即为:在容器中调用宿主机的docker/k8s命令。
具体可选的,步骤2.6,包括:
步骤2.6.1:从gitlab平台拉取控制型k8s容器应用的程序文件;
步骤2.6.2:把控制型k8s容器应用的程序文件和控制型k8s容器应用的Dockerfile文件进行编译,并将控制型k8s容器应用的程序文件和控制型k8s容器应用的Dockerfile文件打包成镜像文件,将镜像文件推送第一harbor仓库;
步骤2.6.3:运行控制型k8s容器应用的yaml文件,以从第一harbor仓库中获取步骤2.6.2中的镜像文件,并利用镜像文件部署控制型k8s容器应用。
一些可选实施例中,参见图2,步骤3可以通过但不限于以下过程实现:
步骤3.1:利用控制型k8s容器应用的后台,创建应用型k8s容器应用;
步骤3.2:将应用型k8s容器应用的相关文件输出至应用型k8s容器应用的nfs挂载目录。
一些可选实施例中,参见图2,步骤4可以通过但不限于以下过程实现:
步骤4.1:利用harbor服务创建第二harbor仓库,用于存放应用型k8s容器应用的镜像文件;
步骤4.2:编写应用型k8s容器应用的Dockerfile文件,并把应用型k8s容器应用的Dockerfile文件放到应用型k8s容器应用的nfs挂载目录;
步骤4.3:编写并执行脚本,用于使用挂载的宿主机docker命令将应用型k8s容器应用的Dockerfile文件和应用型k8s容器应用的nfs挂载目录打包成镜像文件;
步骤4.4:将步骤4.3中的镜像文件推送到第二harbor仓库;
步骤4.5:编写应用型k8s容器应用的yaml文件,并用挂载的宿主机k8s命令运行应用型k8s容器应用的yaml文件,以从第二harbor仓库中读取步骤4.3中的镜像文件,并将镜像文件发布成应用型k8s容器应用。
本发明实施例提供的一种部署k8s容器应用的方法,通过在宿主机服务器上搭建运行环境,基于k8s集群部署控制型k8s容器应用,在控制型k8s容器应用中创建应用型k8s容器应用,在控制型k8s容器应用中实现应用型k8s容器应用的部署,实现部署k8s容器应用,并且当部署多个容器应用时,可简化部署步骤(即在控制型k8s容器应用中创建应用型k8s容器应用);解放了在宿主机上的操作,让所有应用层的操作都在控制型k8s容器中执行,应用型应用的上线与下线一键操作,减少错误率。
为配合实现上述部署k8s容器应用的方法,本发明实施例提供一种部署k8s容器应用的装置,如图3所示,该装置包括:
初始化单元,用于在宿主机服务器上搭建运行环境;
部署单元,用于基于k8s集群部署控制型k8s容器应用;
创建单元,用于在控制型k8s容器应用中创建应用型k8s容器应用;
实现单元,用于在控制型k8s容器应用中实现应用型k8s容器应用的部署。
进一步可选的,初始化单元,包括:
第一部署模块,用于使用kubeadm方法部署k8s集群;
第二部署模块,用于部署gitlab服务,用于存放应用的程序文件;
第三部署模块,用于部署harbor服务,用于存放容器应用的镜像文件;
第四部署模块,用于部署jenkins平台与gitlab打通,以及配置当向gitlab提交程序时触发jenkins;
第五部署模块,用于部署nfs服务,用于为容器创建挂载目录。
进一步可选的,部署单元,包括:
第一创建模块,用于在宿主机服务器上为应用型k8s容器应用创建nfs挂载目录;
第一编写模块,用于编写控制型k8s容器应用的yaml文件;
第二编写模块,用于编写控制型k8s容器应用的Dockerfile文件,并把控制型k8s容器应用的Dockerfile文件放在控制型k8s容器应用程序的目录下;
第二创建模块,用于利用gitlab服务创建gitlab仓库,将控制型k8s容器应用的程序文件提交到gitlab仓库;
第三创建模块,用于利用harbor服务创建第一harbor仓库,用于存放控制型k8s容器应用的镜像文件;
第四创建模块,用于在jenkins平台为控制型k8s容器应用创建jenkins项目。
具体的,第一编写模块,包括:
第一挂载子模块,用于挂载宿主机docker命令和宿主机k8s命令;
第二挂载子模块,用于挂载应用型k8s容器应用的nfs挂载目录。
具体的,第四创建模块,包括:
拉取子模块,用于从gitlab平台拉取控制型k8s容器应用的程序文件;
打包子模块,用于把控制型k8s容器应用的程序文件和控制型k8s容器应用的Dockerfile文件进行编译,并将控制型k8s容器应用的程序文件和控制型k8s容器应用的Dockerfile文件打包成镜像文件,将镜像文件推送第一harbor仓库;
部署子模块,用于运行控制型k8s容器应用的yaml文件,以从第一harbor仓库中获取打包子模块中的镜像文件,并利用镜像文件部署控制型k8s容器应用。
进一步可选的,创建单元,包括:
第五创建模块,用于利用控制型k8s容器应用的后台,创建应用型k8s容器应用;
输出模块,用于将应用型k8s容器应用的相关文件输出至应用型k8s容器应用的nfs挂载目录。
进一步可选的,实现单元,包括:
第六创建模块,用于利用harbor服务创建第二harbor仓库,用于存放应用型k8s容器应用的镜像文件;
第三编写模块,用于编写应用型k8s容器应用的Dockerfile文件,并把应用型k8s容器应用的Dockerfile文件放到应用型k8s容器应用的nfs挂载目录;
第四编写模块,用于编写并执行脚本,用于使用挂载的宿主机docker命令将应用型k8s容器应用的Dockerfile文件和应用型k8s容器应用的nfs挂载目录打包成镜像文件;
推送模块,用于第四编写模块中的镜像文件推送到第二harbor仓库;
第五编写模块,用于编写应用型k8s容器应用的yaml文件,并用挂载的宿主机k8s命令运行应用型k8s容器应用的yaml文件,以从第二harbor仓库中读取第四编写模块中的镜像文件,并将该镜像文件发布成应用型k8s容器应用。
本发明实施例提供的一种部署k8s容器应用装置,通过初始化单元在宿主机服务器上搭建运行环境,部署单元基于k8s集群部署控制型k8s容器应用,创建单元在控制型k8s容器应用中创建应用型k8s容器应用,实现单元在控制型k8s容器应用中实现应用型k8s容器应用的部署,实现部署k8s容器应用,并且当部署多个容器应用时,可简化部署步骤(即在控制型k8s容器应用中创建应用型k8s容器应用);解放了在宿主机上的操作,让所有应用层的操作都在控制型k8s容器中执行,应用型应用的上线与下线一键操作,减少错误率。
可以理解的是,上述提供的装置实施例与上述的方法实施例对应,相应的具体内容可以相互参考,在此不再赘述。
本发明实施例还提供一种电子设备,包括处理器以及存储器,存储器存储有计算机介质,上计算机介质由处理器执行时,运行上述任一实施例中的代码发布方法。
本发明实施例还提供一种计算机介质,计算机介质上存储有计算机程序,计算机程序被处理器运行时执行上述任一实施例中的代码发布方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令方法的制造品,该指令方法实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种部署k8s容器应用的方法,其特征在于,所述方法包括:
在宿主机服务器上搭建运行环境;
基于k8s集群部署控制型k8s容器应用;
在控制型k8s容器应用中创建应用型k8s容器应用;
在控制型k8s容器应用中实现应用型k8s容器应用的部署。
2.根据权利要求1所述的方法,其特征在于,所述在宿主机服务器上搭建运行环境,包括:
步骤11:使用kubeadm方法部署所述k8s集群;
步骤12:部署gitlab服务,用于存放应用的程序文件;
步骤13:部署harbor服务,用于存放容器应用的镜像文件;
步骤14:部署jenkins平台与gitlab打通,以及配置当向gitlab提交程序时触发jenkins;
步骤15:部署nfs服务,用于为容器创建挂载目录。
3.根据权利要求2所述的方法,其特征在于,所述基于k8s集群部署控制型k8s容器应用,包括:
步骤21:在所述宿主机服务器上为应用型k8s容器应用创建nfs挂载目录;
步骤22:编写控制型k8s容器应用的yaml文件;
步骤23:编写控制型k8s容器应用的Dockerfile文件,并把所述控制型k8s容器应用的Dockerfile文件放在控制型k8s容器应用程序的目录下;
步骤24:利用所述gitlab服务创建gitlab仓库,将控制型k8s容器应用的程序文件提交到gitlab仓库;
步骤25:利用所述harbor服务创建第一harbor仓库,用于存放控制型k8s容器应用的镜像文件;
步骤26:在所述jenkins平台为控制型k8s容器应用创建jenkins项目。
4.根据权利要求3所述的方法,其特征在于,所述步骤22,包括:
步骤221:挂载宿主机docker命令和宿主机k8s命令;
步骤222:挂载所述应用型k8s容器应用的nfs挂载目录。
5.根据权利要求3所述的方法,其特征在于,所述步骤26,包括:
步骤261:从所述gitlab平台拉取控制型k8s容器应用的程序文件;
步骤262:把所述控制型k8s容器应用的程序文件和所述控制型k8s容器应用的Dockerfile文件进行编译,并将所述控制型k8s容器应用的程序文件和所述控制型k8s容器应用的Dockerfile文件打包成镜像文件,将所述镜像文件推送所述第一harbor仓库;
步骤263:运行所述控制型k8s容器应用的yaml文件,以从所述第一harbor仓库中获取步骤262中的镜像文件,并利用所述镜像文件部署控制型k8s容器应用。
6.根据权利要求4所述的方法,其特征在于,所述在控制型k8s容器应用中创建应用型k8s容器应用,包括:
步骤31:利用所述控制型k8s容器应用的后台,创建所述应用型k8s容器应用;
步骤32:将所述应用型k8s容器应用的相关文件输出至所述应用型k8s容器应用的nfs挂载目录。
7.根据权利要求4所述的方法,其特征在于,所述在控制型k8s容器应用中实现应用型k8s容器应用的部署,包括:
步骤41:利用所述harbor服务创建第二harbor仓库,用于存放应用型k8s容器应用的镜像文件;
步骤42:编写应用型k8s容器应用的Dockerfile文件,并把所述应用型k8s容器应用的Dockerfile文件放到所述应用型k8s容器应用的nfs挂载目录;
步骤43:编写并执行脚本,用于使用挂载的所述宿主机docker命令将所述应用型k8s容器应用的Dockerfile文件和所述应用型k8s容器应用的nfs挂载目录打包成镜像文件;
步骤44:将步骤43中的所述镜像文件推送到所述第二harbor仓库;
步骤45:编写应用型k8s容器应用的yaml文件,并用挂载的所述宿主机k8s命令运行所述应用型k8s容器应用的yaml文件,以从所述第二harbor仓库中读取步骤43中的所述镜像文件,并将所述镜像文件发布成应用型k8s容器应用。
8.一种部署k8s容器应用的装置,其特征在于,所述装置包括:
初始化单元,用于在宿主机服务器上搭建运行环境;
部署单元,用于基于k8s集群部署控制型k8s容器应用;
创建单元,用于在控制型k8s容器应用中创建应用型k8s容器应用;
实现单元,用于在控制型k8s容器应用中实现应用型k8s容器应用的部署。
9.一种电子设备,其特征在于,包括处理器以及存储器,所述存储器存储有计算机介质,上所述计算机介质由所述处理器执行时,运行如权利要求1至8任一项所述的代码发布方法。
10.一种计算机介质,其特征在于,所述计算机介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1至8任一所述的代码发布方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110416722.5A CN113032104A (zh) | 2021-04-19 | 2021-04-19 | 一种部署k8s容器应用的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110416722.5A CN113032104A (zh) | 2021-04-19 | 2021-04-19 | 一种部署k8s容器应用的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113032104A true CN113032104A (zh) | 2021-06-25 |
Family
ID=76456769
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110416722.5A Pending CN113032104A (zh) | 2021-04-19 | 2021-04-19 | 一种部署k8s容器应用的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113032104A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113688010A (zh) * | 2021-08-26 | 2021-11-23 | 浙江九州云信息科技有限公司 | 一种基于注解的k8s与harbor项目一致性控制器 |
CN113722048A (zh) * | 2021-08-31 | 2021-11-30 | 杭州默安科技有限公司 | 一种k8s中IAST agent自动化部署方法和系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109345232A (zh) * | 2018-09-18 | 2019-02-15 | 北京奇虎科技有限公司 | 一种基于分级容器机制来构建应用平台的方法及系统 |
WO2019153829A1 (zh) * | 2018-02-12 | 2019-08-15 | 人和未来生物科技(长沙)有限公司 | 一种容器Dockerfile、容器镜像快速生成方法及系统 |
CN110995473A (zh) * | 2019-11-18 | 2020-04-10 | 腾讯科技(深圳)有限公司 | 一种业务节点的控制方法及相关设备 |
CN111625316A (zh) * | 2020-05-15 | 2020-09-04 | 苏州浪潮智能科技有限公司 | 一种环境部署方法、装置及电子设备和存储介质 |
CN111966465A (zh) * | 2020-08-21 | 2020-11-20 | 苏州浪潮智能科技有限公司 | 一种实时修改宿主机配置参数的方法、系统、设备及介质 |
CN112579253A (zh) * | 2020-12-02 | 2021-03-30 | 科东(广州)软件科技有限公司 | 一种管理容器的方法及系统 |
-
2021
- 2021-04-19 CN CN202110416722.5A patent/CN113032104A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019153829A1 (zh) * | 2018-02-12 | 2019-08-15 | 人和未来生物科技(长沙)有限公司 | 一种容器Dockerfile、容器镜像快速生成方法及系统 |
CN109345232A (zh) * | 2018-09-18 | 2019-02-15 | 北京奇虎科技有限公司 | 一种基于分级容器机制来构建应用平台的方法及系统 |
CN110995473A (zh) * | 2019-11-18 | 2020-04-10 | 腾讯科技(深圳)有限公司 | 一种业务节点的控制方法及相关设备 |
CN111625316A (zh) * | 2020-05-15 | 2020-09-04 | 苏州浪潮智能科技有限公司 | 一种环境部署方法、装置及电子设备和存储介质 |
CN111966465A (zh) * | 2020-08-21 | 2020-11-20 | 苏州浪潮智能科技有限公司 | 一种实时修改宿主机配置参数的方法、系统、设备及介质 |
CN112579253A (zh) * | 2020-12-02 | 2021-03-30 | 科东(广州)软件科技有限公司 | 一种管理容器的方法及系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113688010A (zh) * | 2021-08-26 | 2021-11-23 | 浙江九州云信息科技有限公司 | 一种基于注解的k8s与harbor项目一致性控制器 |
CN113688010B (zh) * | 2021-08-26 | 2024-02-27 | 浙江九州云信息科技有限公司 | 一种基于注解的k8s与harbor项目一致性控制器 |
CN113722048A (zh) * | 2021-08-31 | 2021-11-30 | 杭州默安科技有限公司 | 一种k8s中IAST agent自动化部署方法和系统 |
CN113722048B (zh) * | 2021-08-31 | 2023-10-27 | 杭州默安科技有限公司 | 一种k8s中IAST agent自动化部署方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10402302B1 (en) | Reproduction of testing scenarios in a continuous integration environment | |
CN113032104A (zh) | 一种部署k8s容器应用的方法和装置 | |
US10585785B2 (en) | Preservation of modifications after overlay removal from a container | |
US10891120B2 (en) | Performing a compiler optimization pass as a transaction | |
CN107832059B (zh) | 一种基于Makefile的代码静态分析方法和装置 | |
CN111399840B (zh) | 一种模块开发方法及装置 | |
CN112764753A (zh) | 一种项目的部署方法、装置、电子设备及存储介质 | |
CN112506525A (zh) | 持续集成和持续交付方法、装置、电子设备及存储介质 | |
CN114398145A (zh) | 基于X86平台的Jailhouse运行non-root Linux的方法 | |
CN111651219A (zh) | 一种多模块项目配置文件管理的方法及设备 | |
CN113805882A (zh) | 应用程序开发的方法、装置、电子设备及存储介质 | |
CN112579099A (zh) | 代码的部署方法、装置、存储介质及电子设备 | |
CN117707543A (zh) | 一种应用安装包制作和安装方法、计算设备及存储介质 | |
CN111562942B (zh) | 基于Gitlab的移动APP持续集成装置和方法 | |
CN111367799B (zh) | 定位源代码崩溃位置的方法、装置、介质及电子设备 | |
CN113010180A (zh) | 一种固件生成方法、系统、设备以及介质 | |
US10552135B1 (en) | Reducing a size of an application package | |
CN112799778A (zh) | 一种容器应用启动方法、设备及介质 | |
CN115576560A (zh) | 一种动态类加载器的热重载方法、装置、设备和介质 | |
CN115712793A (zh) | 全景前端文档站点生成方法及系统 | |
CN115857999A (zh) | 基于vue的系统架构改造获得微前端系统架构的方法及系统 | |
CN109976728B (zh) | 一种原生应用程序的生成方法、装置、移动终端 | |
CN112579145A (zh) | 应用部署方法及装置 | |
CN114564230B (zh) | 鸿蒙系统的一键上传实现方法、装置、电子设备及介质 | |
CN113806015B (zh) | 一种基于arm架构的虚拟路由网络构建方法及设备 |
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 |