Application publishing method, apparatus, and electronic device
By acquiring the code file data of the target business, generating Docker image files, and compiling them using the target template of the application deployment platform, the Kubernetes deployment process is simplified, the complexity of traditional deployment is solved, and efficient application deployment and resource optimization are achieved.
Patent Information
- Application Number
- CN202110476543.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-04-29
- Publication Date
- 2025-12-16
- Estimated Expiration
- 2041-04-29
AI Technical Summary
Traditional Kubernetes deployment and usage are complex and require professional experience, which increases the difficulty of application deployment and release and affects the normal implementation of applications.
By acquiring the code file data of the target business, an initial Docker image file is generated based on preset compilation rules. The image file is then compiled using the target template of the application deployment platform to generate a deployment text, simplifying the deployment process.
It reduces the difficulty of application deployment and release, ensures the normal implementation of applications, and improves deployment efficiency and resource utilization.
Smart Images

Figure CN115268919B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] Embodiments of the present application relate to the technical field of data processing, and particularly relate to an application publishing method and device and electronic equipment. BACKGROUND
[0002] With the development of Internet technology, it is often necessary to deploy applications on multiple hosts in a cloud platform, and Kubernetes is becoming more and more popular among maintenance personnel due to its convenience in deploying applications.
[0003] Compared with traditional deployment methods, containerized deployment represented by Docker and Kubernetes (also known as k8s) has many advantages, such as unified program running environment, millisecond-level startup speed, high availability of applications, highly automated operation and maintenance, etc. With the help of container technology, delivery efficiency, operation and maintenance efficiency, and resource utilization can be greatly improved.
[0004] However, traditional kubernetes deployment and use is a complex task that requires experienced maintenance personnel, increasing the difficulty of application deployment and publishing, and thus affecting the normal implementation of various applications. SUMMARY
[0005] Embodiments of the present application provide an application publishing method, device and electronic equipment to reduce the difficulty of application deployment and publishing.
[0006] In a first aspect, embodiments of the present application provide an application publishing method, comprising:
[0007] obtaining code file data corresponding to a target service;
[0008] compiling the code file data based on a preset compilation rule to obtain an initial docker image file;
[0009] uploading the initial docker image file to a storage location corresponding to the target service in an image repository;
[0010] compiling the initial docker image file at the storage location corresponding to the target service in the image repository based on a target template in a preset application publishing platform to obtain a to-be-published text, and publishing the to-be-published text.
[0011] Optionally, the code file data includes an environment, a code package, and configuration information of the target service application, and the compiling the code file data based on a preset compilation rule to obtain an initial docker image file comprises:
[0012] Compiling the environment, code package and configuration information of the target business application based on a Dockerfile compiling rule to obtain an initial docker image file.
[0013] Optionally, the target business contains a target business identifier, and before the initial docker image file is uploaded to the storage location corresponding to the target business in the image warehouse, the method further includes:
[0014] Allocating a corresponding storage location for the target business based on the business identifier.
[0015] Optionally, before the initial docker image file in the storage location corresponding to the target business in the image warehouse is compiled based on the target template in the preset application release platform to obtain the to-be-released text, the method further includes:
[0016] Automatically deploying a Kubernetes cluster based on a binary mode and a preset deployment rule, wherein the Kubernetes cluster contains any one or more components in master, node, etcd, harbor, docker and certificate creation;
[0017] Generating a basic image of an initial application release platform through a docker tool;
[0018] Performing yaml file configuration on the basic image of the initial application release platform on the Kubernetes cluster, and deploying the initial application release platform by using a first preset tool to obtain an application release platform.
[0019] Optionally, after the basic image of the initial application release platform is subjected to yaml file configuration on the Kubernetes cluster and the initial application release platform is deployed by using a Kubernetes tool to obtain the application release platform, the method further includes:
[0020] Deploying an open-source monitoring system corresponding to the application release platform on the Kubernetes cluster by using a second preset tool to realize monitoring of resource information corresponding to the Kubernetes cluster and a pod resource in the Kubernetes cluster.
[0021] Optionally, after the initial docker image file in the storage location corresponding to the target business in the image warehouse is compiled based on the target template in the preset application release platform to obtain the to-be-released text, and the to-be-released text is released, the method further includes:
[0022] Adjusting resource configuration information of each application deployed in the application release platform based on an automatic horizontal scaling rule HPA.
[0023] In a second aspect, an embodiment of the present application provides an application publishing device, comprising:
[0024] an obtaining module, configured to obtain code file data corresponding to a target service;
[0025] a processing module, configured to perform compiling processing on the code file data based on a preset compiling rule to obtain an initial docker image file;
[0026] The processing module is further configured to upload the initial docker image file to a storage location corresponding to the target service in an image warehouse.
[0027] The processing module is further configured to compile the initial docker image file at the storage location corresponding to the target service in the image warehouse based on a target template in a preset application publishing platform to obtain a to-be-published text, and publish the to-be-published text.
[0028] In a third aspect, an embodiment of the present application provides an electronic device, comprising at least one processor and a memory;
[0029] The memory stores computer-executed instructions.
[0030] The at least one processor executes the computer-executed instructions stored in the memory, so that the at least one processor performs the application publishing method according to any one of the first aspect.
[0031] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, which stores computer-executed instructions, and when a processor executes the computer-executed instructions, the application publishing method according to any one of the first aspect is implemented.
[0032] In a fifth aspect, an embodiment of the present application provides a computer program product, which comprises a computer program, and when a processor executes the computer program, the application publishing method according to the first aspect and various possible designs of the first aspect is implemented.
[0033] The application embodiment provides an application publishing method and device and electronic equipment, and the above scheme is adopted to acquire code file data corresponding to a target service, perform compiling processing on the code file data based on preset compiling rules, obtain an initial docker image file, upload the initial docker image file to a storage location corresponding to the target service in an image warehouse, compile the initial docker image file in the storage location corresponding to the target service in the image warehouse based on a target template in a preset application publishing platform, obtain a to-be-published text, and publish the to-be-published text. The code file data corresponding to the target service to be published is preprocessed, and the preprocessed code file is input into the preset application publishing platform to obtain the to-be-published file, so that the difficulty of application deployment and publishing is reduced, and normal implementation of each application is ensured. BRIEF DESCRIPTION OF DRAWINGS
[0034] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the following will briefly introduce the drawings needed to be used in the embodiments or the prior art description. Obviously, the drawings in the following description are only some embodiments of the present application, and for those skilled in the art, other drawings can also be obtained without creative labor.
[0035] Figure 1 The architecture schematic diagram of the application system of the application publishing method provided by the present application embodiment;
[0036] Figure 2 The flowchart of the application publishing method provided by the present application embodiment;
[0037] Figure 3 The flowchart of the application publishing method provided by another present application embodiment;
[0038] Figure 4 The structure schematic diagram of the application publishing device provided by the present application embodiment;
[0039] Figure 5 The hardware structure schematic diagram of the electronic equipment provided by the present application embodiment. DETAILED DESCRIPTION
[0040] The technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, but not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor are within the protection scope of the present application.
[0041] The terms "first", "second", "third", "fourth" and the like in the description and in the claims of the present application, and above-described drawings, if any, are used to distinguish between similar objects and are not necessarily used to describe a particular sequential or chronological order. It is to be understood that the use of the terms so-termed, where appropriate, can be interchanged with each other to the extent that embodiments of the application described herein are also capable of being carried out in other sequences than the ones illustrated or described herein. Furthermore, the terms "comprising" and "including" and any of their derivatives, are intended to cover non-exclusive inclusions, for example, a process, method, system, product, or apparatus that comprises a list of steps or units is not necessarily limited to those steps or units that are clearly listed, but can include other steps or units that are not clearly listed or inherent to such processes, methods, products, or apparatuses.
[0042] In the prior art, compared with the traditional deployment mode, the containerization deployment represented by Docker and Kubernetes (also known as k8s) has many advantages, such as unified program running environment, millisecond-level startup speed, high availability of applications, highly automated operation and maintenance, etc. With the help of container technology, delivery efficiency, operation and maintenance efficiency and resource utilization can be greatly improved. However, traditional kubernetes deployment and use is a complex work that requires experienced maintenance personnel to implement, and for many application manufacturers, implementing containerization deployment of applications has a high threshold of practice and learning, and due to the singularity of the code running environment, there is a certain difference between production environment deployment and development, which increases the difficulty of application deployment and release, and further affects the normal implementation of each application.
[0043] Based on the above problems, the application pre-processes the code file data corresponding to the target business to be released, and inputs the pre-processed code file into the preset application release platform to obtain the to-be-released file, thereby achieving the technical effect of reducing the difficulty of application deployment and release, and ensuring the normal implementation of each application.
[0044] Figure 1 The architecture diagram of the application system of the application release method provided by the embodiment of the application is shown in Figure 1 The application system includes a server 101 and a database 102, the database 102 stores code file data corresponding to each target business, the server 101 can obtain the code file data corresponding to the target business to be processed from the database 101, then pre-process the code file data corresponding to the target business, and then further process the pre-processed code file data based on the preset application release platform to obtain the to-be-released text. The server 101 can be a harbor server.
[0045] The technical solutions of the present application are described in detail below with specific examples. The following specific examples can be combined with each other, and some examples may not be described in detail for the same or similar concepts or processes.
[0046] Figure 2 The flowchart of the application publishing method provided in the embodiment of the present application can be executed by the server 101. As shown in the figure, Figure 2 The method of the present embodiment can include:
[0047] S201: Obtain code file data corresponding to the target service.
[0048] In this embodiment, after determining the target service to be published, the code file data corresponding to the target service can be obtained from the database. The database pre-stores code file data corresponding to each service.
[0049] Further, the code file data corresponding to the target service can include the environment, code package and configuration information of the target service application.
[0050] In addition, the server can be used to obtain the code file data corresponding to the target service. The server can be a harbor server. For example, it can be a centos7 or linux kernel version, and the required linux kernel version is 3.10.0 or above, and the docker environment is assembled.
[0051] S202: Compiling the code file data based on the preset compiling rule to obtain an initial docker image file.
[0052] In this embodiment, the preset compiling rule can be a Dockerfile compiling rule, and the code file data is compiled based on the preset compiling rule to obtain an initial docker image file. Specifically, it can include:
[0053] The environment, code package and configuration information of the target service application are compiled based on the Dockerfile compiling rule to obtain an initial docker image file. The initial docker image file has a tag label, which is used to identify the docker image file, and different docker image files correspond to different tag labels.
[0054] S203: Upload the initial docker image file to the storage location corresponding to the target service in the image warehouse.
[0055] In the embodiment, after the initial docker image file is determined, the initial docker image file can be uploaded to the storage location corresponding to the target service in the harbor image warehouse through a docker push command.
[0056] In addition, the target service can include a target service identifier, and before the initial docker image file is uploaded to the storage location corresponding to the target service in the image warehouse, the method can further include:
[0057] allocating a corresponding storage location for the target service based on the service identifier.
[0058] Further, different storage locations can be allocated in advance for different services in the harbor image warehouse, and after the initial docker image file corresponding to each service is obtained, the initial docker image file corresponding to each target service can be stored in the corresponding storage location according to the service identifier.
[0059] S204: Compiling the initial docker image file at the storage location corresponding to the target service in the image warehouse based on a target template in a preset application publishing platform to obtain a to-be-published text, and publishing the to-be-published text.
[0060] In the embodiment, after the initial docker image file is uploaded to the storage location corresponding to the target service in the image warehouse, the initial docker image file can be compiled based on a target template in a preset application publishing platform to obtain a to-be-published text, and then the to-be-published text is published.
[0061] The target template can include publishing information, an update strategy, container configuration, startup command parameters, and can also include volume data volumes, mounting configuration sets, storage classes, and other parameter information created through advanced configuration.
[0062] After the above scheme is adopted, the code file data corresponding to the target service can be obtained first, and then the code file data is compiled based on a preset compilation rule to obtain an initial docker image file. The initial docker image file is uploaded to the storage location corresponding to the target service in the image warehouse, and the initial docker image file at the storage location corresponding to the target service in the image warehouse is compiled based on a target template in a preset application publishing platform to obtain a to-be-published text, and the to-be-published text is published. Through the way of preprocessing the code file data corresponding to the target service to be published and inputting the preprocessed code file into the preset application publishing platform to obtain the to-be-published file, the difficulty of application deployment and publishing is reduced, and the normal implementation of each application is ensured.
[0063] Based onFigure 2 The method, and some specific embodiments of the method are provided in the embodiments of the present application, which are described below.
[0064] Figure 3 The flowchart of the application publishing method provided by another embodiment of the present application is shown in FIG. 4, which can further include the following steps before S204: Figure 3
[0065] S301: automatically deploying a Kubernetes cluster based on a binary mode and a preset deployment rule, wherein the Kubernetes cluster contains any one or more components of master, node, etcd, harbor, docker, and certificate creation.
[0066] In the embodiment, the preset deployment rule can be achieved by using an ansible-playbook rule to realize deployment automation. That is, a one-key installation script can be provided, or the installation of each component can be performed step by step according to an installation guide, wherein the components include master, node, etcd, harbor, docker, and certificate creation.
[0067] S302: generating a basic image of an initial application publishing platform by using a docker tool.
[0068] S303: configuring a yaml file for the basic image of the initial application publishing platform on the Kubernetes cluster, and deploying the initial application publishing platform by using a first preset tool to obtain an application publishing platform.
[0069] In the embodiment, the first preset tool is kubectl in Kubernetes.
[0070] In addition, after the step of configuring a yaml file for the basic image of the initial application publishing platform on the Kubernetes cluster, and deploying the initial application publishing platform by using a Kubernetes tool to obtain an application publishing platform, the method can further include the following steps:
[0071] S304: deploying an open-source monitoring system corresponding to the application publishing platform on the Kubernetes cluster by using a second preset tool to realize monitoring of resource information corresponding to the Kubernetes cluster and a pod resource in the Kubernetes cluster.
[0072] In the embodiment, the second preset tool can also be kubectl, that is, the same as the first preset tool. In addition, the second preset tool can also be a tool different from the first preset tool but capable of realizing the function.
[0073] The open-source monitoring system can be Promethues Operator.
[0074] In addition, after obtaining the to-be-published text by compiling the initial docker image file at the storage location corresponding to the target service in the image warehouse based on the target template in the preset application publishing platform, and publishing the to-be-published text, the following can be further included:
[0075] The resource configuration information of each application deployed in the application publishing platform is adjusted based on an automatic horizontal scaling rule HPA.
[0076] In the embodiment, there can be multiple applications in the application publishing platform. Before each application runs, the resources of each application need to be allocated. In order to avoid the problem of server congestion caused by concurrent running of multiple applications, the resource configuration information of each application deployed in the application publishing platform can be adjusted based on the HPA rule, so as to avoid the problem of server congestion.
[0077] In addition, the application publishing platform can include two permission pages, i.e., a foreground page and a background page, of a user and an administrator, which can respectively include multiple implementation units, and specifically can include the following:
[0078] On the foreground page side, the following can be included:
[0079] The application creation unit includes several template types such as deployment, state replica set, scheduled task, and daemon set, and creates according to the corresponding types according to the application requirements.
[0080] For example, if the application is a stateless application, a deployment template can be created, and information such as publishing information, update strategy, container configuration, and startup command parameters can be filled in to configure a yaml file that can be published. In addition, a volume data volume can be created through advanced configuration, and a mount configuration set and a storage class can be mounted.
[0081] Among them, the deployment class corresponds to the concept of Deployment of kubernetes, which is a combination of a group of service instances (Pod); the state replica set corresponds to StatefulSet in kubernetes, which is suitable for stateful services, each instance (Pod) is started in order, and the name of the Pod is regular; the daemon set corresponds to the concept of DaemonSet in kubernetes, which ensures that all (or some) nodes run a copy of the Pod; the scheduled task corresponds to the concept of cronjob in kubernetes, which creates a job based on a time-based plan.
[0082] External service unit, including load balancing, ingress. Load balancing is an abstraction of a group of pod objects, which can be associated with the corresponding instance through label tags. Service provides a unified IP and port for the group of pods. Ingress is used to aggregate the services in the cluster. The backend uses Nginx Controller to handle specific rules, and provides the URL, load balancing, SSL termination, HTTP routing, etc. outside the cluster for load balancing.
[0083] Taking load balancing as an example, by creating a load balancing template, filling in the template details including release information, service configuration, port, selector, etc., the external access requirement can be realized. In addition, NodePort can be added in the advanced configuration to assign a fixed port to the current application.
[0084] External configuration unit, including configuration set, encryption dictionary, PVC. Configuration set separates configuration from application to achieve portability. Encryption dictionary corresponds to the secret concept of kubernetes, and stores some sensitive data such as passwords and ssh keys. PVC (Persistent Volume Claim) is an abstraction of kubernetes for persistent storage resources, which can realize persistent storage without understanding the specific details of storage. Storage classes can use forms including nfs and distributed storage ceph.
[0085] Functional unit, including automatic horizontal scaling (HPA). HPA template can be created to configure the scheduling of deployment class applications, and the number of pods can be adjusted according to CPU load.
[0086] On the backstage page side, it can include:
[0087] Cluster configuration unit, including cluster monitoring, cluster association, Kubernetes three types. Cluster monitoring integrates the monitoring page into the backstage function menu. By clicking the "cluster monitoring" menu, you can jump to the grafana interface to view the monitoring details in the dashboard, including cluster, application pod, node, department, etc. Cluster association realizes the association and mounting of cluster and platform through the deployment of KubeConfig file of cluster. Kubernetes realizes the integration of all functional units on the original Kubernetes cluster, and can complete the migration of deployment project to the platform through yaml file.
[0088] The multi-tenant setting unit includes three types of departments, permissions and projects. The department corresponds to the concept of Namespace of kubernetes. The corresponding department is created in the background, and the related resources can be created in the foreground. The permission enables the administrator to create the related permission in the background-> permission-> permission list, edit the related role binding related permission in the background-> permission-> role list, and includes the basic permission, custom resource permission and kubernetes resource permission. The project realizes the creation and deletion functions of multiple projects of the corresponding department.
[0089] The application creation unit realizes the creation and editing functions of the project application template created in the foreground in the background interface, which belongs to the advanced management unit.
[0090] The external service unit includes the advanced creation function of the external service unit template in the foreground, and can edit and recycle the service.
[0091] The external configuration unit realizes the creation and advanced management functions of the configuration unit template in the background.
[0092] The function unit realizes the creation and advanced management functions of the function unit template in the background.
[0093] By using the self-repair function of the implementation platform of the kubernetes business arrangement, it is ensured that when the node fails, the failed container can be automatically restarted, the platform can be replaced and redeployed, and the platform can stably provide services. And it covers all the function units in kubernetes, is simple and easy to operate, ensures that users and administrators can quickly start using the platform to realize application cloud, and realizes one-key automatic publishing of application, speeds up the iteration and update deployment of application. In addition, the multi-tenant mode realizes effective isolation of resource access, and the cluster monitoring module ensures the unified supervision and power division of the administrator to the entire cluster server.
[0094] Based on the same idea, the embodiment of the present specification also provides a device corresponding to the above method, Figure 4 The structure diagram of the application publishing device provided by the embodiment of the present application is shown as Figure 4 It can include:
[0095] The acquisition module 401 is configured to acquire code file data corresponding to a target service.
[0096] The processing module 402 is configured to compile the code file data based on a preset compilation rule to obtain an initial docker image file.
[0097] In this embodiment, the code file data includes the environment, code package and configuration information of the target service application, and the processing module 402 is further configured to:
[0098] The environment, code package, and configuration information of the target service application are compiled based on a Dockerfile compilation rule to obtain an initial docker image file.
[0099] The processing module 402 is further configured to upload the initial docker image file to a storage location corresponding to the target service in an image warehouse.
[0100] In this embodiment, the target service includes a target service identifier, and the processing module 402 is further configured to:
[0101] The target service is assigned a corresponding storage location based on the service identifier.
[0102] The processing module 402 is further configured to compile the initial docker image file at the storage location corresponding to the target service in the image warehouse based on a target template in a preset application release platform to obtain a to-be-released text, and release the to-be-released text.
[0103] In addition, in another embodiment, the processing module 402 is further configured to:
[0104] The Kubernetes cluster includes any one or more components in master, node, etcd, harbor, docker, and certificate creation.
[0105] The processing module 402 is further configured to:
[0106] The initial application release platform is deployed on the Kubernetes cluster based on a preset tool to obtain an application release platform.
[0107] The processing module 402 is further configured to:
[0108] The processing module 402 is further configured to:
[0109] The processing module 402 is further configured to:
[0110] The processing module 402 is further configured to:
[0111] The device provided by the embodiment of the present application can implement the method of the embodiment shown in Figure 2 The implementation principle and technical effects are similar, and details are not described herein.
[0112] Figure 5 The hardware structure diagram of the electronic device provided by the embodiment of the present application is shown in Figure 5 The device 500 provided by the embodiment includes at least one processor 501 and a memory 502. The processor 501 and the memory 502 are connected through a bus 503.
[0113] In the specific implementation process, the at least one processor 501 executes the computer execution instructions stored in the memory 502, so that the at least one processor 501 executes the method in the above method embodiment.
[0114] The specific implementation process of the processor 501 can refer to the above method embodiment, and the implementation principle and technical effects are similar, and details are not described herein.
[0115] In the above embodiment shown in Figure 5 It should be understood that the processor can be a central processing unit (English: Central Processing Unit, CPU for short), and can also be other general-purpose processors, digital signal processors (English: Digital Signal Processor, DSP for short), application specific integrated circuits (English: Application Specific Integrated Circuit, ASIC for short) and the like. The general-purpose processor can be a microprocessor, or the processor can be any conventional processor. The steps of the method disclosed in the application can be directly embodied as hardware processor execution, or executed by hardware and software modules in the processor.
[0116] The memory can include a high-speed RAM memory, and can also include a non-volatile storage NVM, for example, at least one disk memory.
[0117] The bus can be an industry standard architecture (Industry Standard Architecture, ISA) bus, a peripheral component interconnect (Peripheral Component Interconnect, PCI) bus or an extended industry standard architecture (Extended Industry Standard Architecture, EISA) bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For convenience of representation, the bus in the drawings of the present application does not limit only one bus or one type of bus.
[0118] The application also provides a computer readable storage medium, wherein computer execution instructions are stored in the computer readable storage medium, and when a processor executes the computer execution instructions, an application publishing method of the above method embodiment is realized.
[0119] The application also provides a computer program product, comprising a computer program, and when the computer program is executed by a processor, an application publishing method as described above is realized.
[0120] The computer readable storage medium described above can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk. The readable storage medium can be any available medium that can be accessed by a general-purpose or special-purpose computer.
[0121] An exemplary readable storage medium is coupled to the processor, so that the processor can read information from the readable storage medium and write information to the readable storage medium. Of course, the readable storage medium can also be an integral part of the processor. The processor and the readable storage medium can be located in an application specific integrated circuit (ASIC). Of course, the processor and the readable storage medium can also exist as discrete components in the device.
[0122] Those skilled in the art can understand that all or part of the steps of the above method embodiments can be completed by program instruction related hardware. The foregoing program can be stored in a computer readable storage medium. The program executes to perform the steps of the above method embodiments; and the foregoing storage medium includes ROM, RAM, magnetic disk or optical disk and various storage medium that can store program codes.
[0123] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, and not to limit them; although the present application has been described in detail with reference to the above embodiments, those skilled in the art should understand that they can modify the technical solutions recorded in the above embodiments, or make equivalent replacement for part or all of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the scope of the technical solutions of the embodiments of the present application.
Claims
1. An application publishing method characterized by comprising: The application comprises the following steps: acquiring code file data corresponding to a target service, the code file data comprising an environment, a code package, and configuration information of the target service, and the target service comprising a target service identifier; compiling the code file data based on a preset Dockerfile compilation rule to obtain an initial docker image file; uploading the initial docker image file to a storage location corresponding to the target service in an image warehouse, the storage location being pre-allocated based on the target service identifier; compiling the initial docker image file at the storage location corresponding to the target service in the image warehouse based on a target template in a preset application publishing platform to obtain a to-be-published text, and publishing the to-be-published text; adjusting resource configuration information of each application deployed in the application publishing platform based on an automatic horizontal scaling rule HPA; wherein the application publishing platform is deployed on a Kubernetes cluster that is automatically deployed through a binary mode and a preset deployment rule, the Kubernetes cluster comprising a master node, a node node, an etcd component, a harbor component, a docker component, and a certificate creation; the application publishing platform comprises a multi-tenant setting unit on the backstage page side, the multi-tenant setting unit realizing department-level resource isolation through the Namespace of Kubernetes; the preset deployment rule is to realize deployment automation by using the ansible-playbook rule, and to provide a one-key installation script or to execute installation of each component step by step according to an installation guide; the multi-tenant setting unit comprises three types of departments, permissions, and projects, wherein the departments correspond to the Namespace concept of Kubernetes, and a corresponding department can be created in the front end to create related resources in the back end.
2. The method of claim 1, wherein, The preset Dockerfile compilation rule is used to compile the code file data to obtain an initial docker image file, comprising: The environment, code package, and configuration information of the target service are compiled based on the Dockerfile compilation rule to obtain an initial docker image file.
3. The method according to claim 1 or 2, characterized in that, After the application publishing platform is deployed on the Kubernetes cluster that is automatically deployed through the binary mode and the preset deployment rule, the following steps are further included: generating a basic image of the initial application publishing platform by using a docker tool; configuring a yaml file of the basic image of the initial application publishing platform on the Kubernetes cluster, and deploying the initial application publishing platform by using a first preset tool to obtain the application publishing platform.
4. The method of claim 3, wherein, After the basic image of the initial application publishing platform is configured on the Kubernetes cluster, and the initial application publishing platform is deployed by using the Kubernetes tool to obtain the application publishing platform, the following steps are further included: The application further discloses a method for deploying an application publishing platform on a Kubernetes cluster.
5. An application distribution apparatus characterized by comprising: The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application.
6. An electronic device, comprising: The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application.
7. A computer readable storage medium characterized by The application further discloses a method for publishing an application.
8. A computer program product comprising a computer program, characterized in that, The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application further discloses a method for publishing an application. The application
Citation Information
Patent Citations
Docker container construction method and device, equipment and storage medium
CN110058863A
Container-based release management method and system
CN111124596A