Application program deployment method and device, equipment, medium and product
Through containerized deployment methods, using application identification and mirror construction rules, the problem of cumbersome and inefficient application deployment process in the existing technology is solved, and efficient and stable application deployment is achieved.
Patent Information
- Application Number
- CN202411971974.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-30
- Publication Date
- 2025-04-25
AI Technical Summary
In the prior art, the deployment process of applications is cumbersome, inefficient, high cost, and inconsistent coordination of environmental information will affect the functionality and stability of the application.
By determining the front-end application and its application identifier of the application to be deployed, the target container is determined, and the program files and pre-set mirror construction rules are used to achieve containerized deployment, reducing environmental configuration differences and deployment complexity.
It realizes efficient and low-cost application deployment, reducing the complexity and cost of deployment work, while improving application stability and functional integrity.
Smart Images

Figure CN119883326A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of application deployment technology and can be applied to the field of financial technology, and in particular to a method, device, equipment, medium and product for deploying an application. Background Art
[0002] Banks will deploy a variety of applications at the front end of the business system to provide users with more comprehensive and convenient financial services, enhance user experience, and improve business efficiency and quality. However, the deployment environment of different applications will be different. At present, the applications to be deployed are deployed one by one. When deploying applications, it is necessary to use the application environment information of the application to be deployed as the standard, adjust the current environment information of the business system, and install or transfer the application to be deployed to the business system by deploying static files after the environment information of the two is consistent. Every time an application is deployed, it is necessary to detect and adjust the environment information first. The deployment work is cumbersome, inefficient, and costly. Once the environment is not coordinated, it will directly affect the function and stability of the application.
[0003] Therefore, how to deploy applications efficiently, at low cost, and with high stability, enrich business diversity, and improve user service experience is a problem that needs to be solved urgently. Summary of the invention
[0004] The present invention provides an application deployment method, device, equipment, medium and product, which can be applied to the field of financial technology, can reduce the environmental configuration differences and complexity of front-end deployment work, and realize containerized deployment of front-end applications with high efficiency and low cost.
[0005] According to one aspect of the present invention, a method for deploying an application is provided, the method comprising:
[0006] Determine an application to be deployed, wherein the application to be deployed includes at least one front-end application;
[0007] Determine a target container based on an application identifier of at least one front-end application, wherein the target container includes at least one target sub-container, and the target sub-container corresponds to the front-end application one by one;
[0008] At least one front-end application is deployed in at least one target sub-container by using the program file of at least one front-end application and the preset image building rules, so as to complete the deployment work of the application to be deployed.
[0009] According to another aspect of the present invention, a device for deploying an application is provided. The device for deploying an application is used to implement the method for deploying an application in any embodiment of the present invention. The device includes:
[0010] An acquisition module, used to determine the application to be deployed, wherein the application to be deployed includes at least one front-end application;
[0011] A determination module, configured to determine a target container based on an application identifier of at least one front-end application, wherein the target container includes at least one target sub-container, and the target sub-container corresponds to the front-end application in a one-to-one manner;
[0012] The deployment module is used to deploy the at least one front-end application in at least one target sub-container by using the program files of the at least one front-end application and the pre-set image building rules to complete the deployment of the application to be deployed.
[0013] According to another aspect of the present invention, there is provided an electronic device, the electronic device comprising:
[0014] at least one processor; and a memory communicatively coupled to the at least one processor;
[0015] The memory stores a computer program that can be executed by at least one processor, and the computer program is executed by at least one processor so that the at least one processor can execute the method for deploying an application program in any embodiment of the present invention.
[0016] According to another aspect of the present invention, a computer-readable storage medium is provided, which stores computer instructions, and the computer instructions are used to enable a processor to implement the method for deploying an application in any embodiment of the present invention when executed.
[0017] According to another aspect of the present invention, a computer program product is provided. The computer program product includes a computer program. When the computer program is executed by a processor, the method for deploying an application program according to any embodiment of the present invention is implemented.
[0018] The deployment method of the application of the present invention comprises: determining the application to be deployed, the application to be deployed includes at least one front-end application; based on the application identifier of at least one front-end application, determining the target container, the target container includes at least one target sub-container, and the target sub-container corresponds to the front-end application one by one; using the program file of at least one front-end application and the pre-set mirror building rules, deploying at least one front-end application in at least one target sub-container to complete the deployment work of the application to be deployed. The technical scheme of the present invention determines the corresponding target sub-container according to the application identifier of each front-end application in the application to be deployed, and then deploys each front-end application in the corresponding target sub-container in parallel according to the program file of each front-end application and the pre-set mirror building rules, which does not require continuous detection and switching of the host environment, and can also execute the deployment work of the front-end application in parallel, with high application deployment efficiency, low complexity and low cost of deployment work. It solves the problem that the deployment of each application in the prior art requires the detection and adjustment of environmental information first, and after the environmental information is coordinated and consistent, the application to be deployed is installed or transmitted to the business system by deploying static files, and the deployment work is cumbersome, inefficient, and costly, and once the environment is not coordinated and consistent, it will directly affect the function and stability of the application.
[0019] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present invention, nor are they intended to limit the scope of the present invention. Other features of the present invention will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0020] In order to more clearly illustrate the technical solutions in the present invention, the accompanying drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without paying creative work.
[0021] Figure 1 It is a flow chart of a method for deploying an application program provided by the present invention;
[0022] Figure 2 It is a flow chart of another application deployment method provided by the present invention;
[0023] Figure 3 It is a structural schematic diagram of a deployment device for an application program provided by the present invention;
[0024] Figure 4 It is a structural schematic diagram of an electronic device provided by the present invention. DETAILED DESCRIPTION
[0025] In order to enable those skilled in the art to better understand the solution of the present invention, the technical solution of the present invention will be clearly and completely described below in conjunction with the drawings of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.
[0026] It should be noted that the terms "first", "second", "initial", "intermediate", "candidate", "alternative", "target", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0027] Figure 1 This is a flow chart of a method for deploying an application provided by the present invention. This embodiment can be applied to quickly deploy front-end applications, implement front-end containerized deployment, reduce environmental configuration differences in front-end deployment, reduce the complexity and maintenance difficulty of front-end deployment, etc. The method can be executed by the application deployment device provided by the present invention. The device can be implemented in the form of hardware and / or software. In a specific embodiment, the device can be integrated in an electronic device. The following embodiments will be described by taking the device integrated in an electronic device as an example. Figure 1 , the method specifically comprises the following steps:
[0028] S101. Determine an application to be deployed.
[0029] The application to be deployed can be understood as the front-end application that needs to be deployed in the banking system. The application to be deployed includes at least one front-end application, which includes but is not limited to online banking applications (used to realize account query, transfer payment, investment and financial management, etc.), mobile banking applications, payment applications, customer service platforms, investment management tools, credit scoring and loan application systems, financial management software, personalized recommendation systems and security function integration systems. The above front-end applications together constitute the user interaction interface of the banking system, which can not only provide users with convenient financial services, but also ensure the security of operations and the privacy of data.
[0030] The application to be deployed can be a new front-end application that has just been developed and tested, or one or more front-end applications that have just been updated, or one or more front-end applications determined according to deployment instructions. The present invention does not limit the method for determining the application to be deployed.
[0031] S102: Determine a target container based on an application identifier of at least one front-end application.
[0032] The operating environments of different front-end applications may be different. For example, the operating environment of front-end application A is environment 1, and the operating environment of front-end application B is environment 2. The front-end applications need to be deployed in their corresponding operating environments to ensure stable and secure operation of the front-end applications. Otherwise, the stability and functional realization of the front-end applications will be affected, and the front-end applications may even be unusable.
[0033] The application identifier of the front-end application can be understood as the personalized feature information of the front-end application, which is used to distinguish each front-end application, including but not limited to the identity document (ID) and environmental parameters of the front-end application. The present invention provides a containerized deployment solution, that is, different front-end applications are deployed in corresponding containers, and the container provides a suitable operating environment for the front-end application. Therefore, the environmental version information of different containers is different. The target container can be understood as a container that conforms to the application to be deployed. Specifically, the target container includes at least one target sub-container, and the target sub-container corresponds to the front-end application one-to-one. The advantage of such a setting is to match a suitable container for each front-end application, so that the front-end application can be deployed in an appropriate operating environment so that it can run safely and stably.
[0034] In one embodiment, S102 may specifically include: determining a container requirement instruction based on an application identifier of at least one front-end application, the container requirement instruction including at least one container type, and the container type corresponds one-to-one with the front-end application; sending a container requirement instruction to the host container, and receiving a container application identifier and feedback data sent by the host container; the container application identifier is used to indicate whether the container application is successful, and the feedback data carries the container information of the application. When the container application identifier indicates that the container application is successful, at least one target sub-container is determined based on the feedback data. The advantage of such a setting is that it efficiently and specifically applies for a container (i.e., a deployment environment) for the front-end application to be deployed, avoiding deploying the front-end application in an incompatible environment, thereby reducing the stability of the front-end application and increasing the difficulty of debugging the front-end application. Secondly, each container in the present invention has an independent operating system environment, and each container does not interfere with each other. It can achieve environmental isolation under the premise of ensuring the functions of the front-end application, and avoid interference between the front-end applications.
[0035] The container type can be understood as the personalized information of the container. Different types of containers have different environment version information.
[0036] There is a certain correspondence between the application identifier of the front-end application and the container requirement instruction. The container requirement instruction of the front-end application can be generated by combining the application identifier of the front-end application and the correspondence between the two. For example, if business application 1 needs to run in a C-type container, then the container requirement instruction of business application 1 is determined to be a C-type container. The container of the present invention is managed by the host container, that is, the host container provides containers to each front-end application, and the front-end application needs to apply to the host container for a containerized deployment environment (i.e., a target sub-container).
[0037] S103: Deploy the at least one front-end application in at least one target sub-container by using the program files of the at least one front-end application and the preset image building rules, so as to complete the deployment of the application to be deployed.
[0038] Among them, the program file of the front-end application can be understood as the programming language code file of the front-end application, which is the functional implementation logic and basis of the front-end application. The image building rules can be used for the creation and management of container images, and assist in deploying the front-end application in its corresponding target sub-container. The image building rules are applicable to a variety of container environments, and the present invention does not limit the specific container environment.
[0039] The present invention deploys each front-end application in its corresponding target sub-container according to the image building rules and the program files of each front-end application. Specifically, S103 may include: determining the deployment scheme of at least one front-end application based on the image building rules, the program files of at least one front-end application and the target sub-container; executing the deployment scheme of at least one front-end application in parallel, and deploying at least one front-end application in at least one target sub-container.
[0040] Among them, the deployment scheme of the front-end application can be understood as the deployment method or deployment rule of the front-end application, which is used to assist the processor in deploying the front-end application in its corresponding target sub-container, for example, migrating the program files of the front-end application to the target sub-container, associating the program files of the front-end application and the target sub-container, creating an installation package, and loading the installation package into the mirror configuration file of the target sub-container, etc. The present invention is not limited to this.
[0041] It is worth noting that there is a one-to-one correspondence between containers and front-end applications. Even if multiple identical front-end applications are deployed, multiple containers need to be applied for. One container can only deploy one front-end application. Specifically, the application information and container information of each front-end application are different. Therefore, the deployment schemes of each front-end application are different. The present invention can execute the deployment work of each front-end application in parallel, realize personalized deployment, and improve the deployment efficiency of the front-end application.
[0042] In the first aspect, for any front-end application, based on the image building rules, the program files of the front-end application and the target sub-container, the deployment scheme of the front-end application is determined, including: based on the image building rules, the container information of the target sub-container is added to the root directory of the front-end application (the highest-level directory containing all files and sub-directories of the project, usually containing the source code, resource files, build scripts, dependent libraries, etc. of the project), and a configuration file is created under the root directory of the front-end application, wherein the configuration file includes environment information, dependency information, engineering build information and proxy service information; based on environment information, dependency information (i.e., third-party open source components that the front-end application depends on), engineering build information (indicative information for converting source code into files that can be run in the browser, including compilation, compression, optimization, packaging, etc.), proxy service information (used to solve cross-domain problems and improve performance) and the program files of the front-end application, the deployment scheme of the front-end application is determined. The advantage of such a setting is that the deployment scheme of the front-end application can be determined in combination with the container information of the target sub-container, the root directory of the front-end application, environment information, dependency information, engineering build information and proxy service information, so as to efficiently, accurately and perform the deployment of the front-end application with high performance.
[0043] Secondly, for any front-end application, the deployment plan of the front-end application is executed, and the front-end application is deployed in the target sub-container, including: submitting the program files of the front-end application to the warehouse (a storage location for saving the source code, documents, binary files, etc. of the project), and starting the application deployment work; controlling the target sub-container to pull the program files of the front-end application from the warehouse, and determining the front-end project image package of the front-end application according to the deployment plan of the front-end application, where the front-end project image package can be understood as the process of packaging the front-end project into a container image; adding the program files of the front-end application to the front-end project image package of the front-end application, and running the target sub-container to complete the deployment of the front-end application. The advantage of this setting is that the deployment of the front-end application is completed automatically, improving the deployment efficiency of the front-end application.
[0044] In one embodiment, the deployment of the front-end application may include: 1) creating a text file A containing a series of instructions and parameters for building a container image in the root directory of the front-end project (i.e., the front-end application). The file mainly includes operation instructions for building the image, such as container environment information, dependency installation information, project build information, proxy service configuration information, etc. 2) Submitting the code of the front-end project to the warehouse release branch, and triggering the continuous integration / continuous deployment (CI / CD) pipeline to perform the deployment task. 3) Upon receiving the code retrieval instruction, control the target sub-container corresponding to the front-end project to pull the program code of the front-end application from the warehouse, and build the front-end project image package based on text file A. 4) Run the target sub-container to complete the deployment of the front-end project.
[0045] The code call instruction may be issued by a user or may be triggered by CI / CD (ie, CI / CD triggers the code call instruction after determining that the program code is correct), and the present invention does not limit this.
[0046] The image package building process may include: 1) Parsing text file A, obtaining the container environment version, and specifying the parsed container environment version as the base image. 2) Setting the current working directory and copying the warehouse front-end project code to the directory. 3) Installing project dependencies according to the dependency files configured in the code (i.e., third-party dependency components configured in the code), and performing packaging and building work. 4) Copying the built static files to the proxy service image, and configuring the access port to start the external access service. The purpose of this setting is to enable users to use the services or businesses provided by the front-end application through the external access service after completing the deployment of the front-end application.
[0047] In the third aspect, for any front-end application, the method also includes: when the front-end application is not deployed for the first time, determining whether the application identifier of the front-end application meets the information update conditions; if the application identifier of the front-end application meets the information update conditions, determining the update code file of the front-end application, and adding the update code file to the target sub-container corresponding to the front-end application; if the application identifier of the front-end application does not meet the information update conditions, determining a candidate container based on the application identifier of the front-end application, using the program files of the front-end application and pre-set image building rules, deploying the front-end application in the candidate container, and after the front-end application is successfully deployed, releasing the target sub-container corresponding to the front-end application.
[0048] The operating environment required by different versions of front-end applications may be inconsistent. In order to improve the adaptability of front-end applications, the present invention will detect the front-end applications deployed twice or multiple times. If the operating environment required for this deployment is the same as the operating environment during the last deployment, the container application and containerized deployment work are skipped, and the updated code file is directly added to the target sub-container corresponding to the front-end application, which can improve the deployment efficiency of the front-end application. If the operating environment required for this deployment is different from the operating environment during the last deployment, the front-end application is considered to be the front-end application deployed for the first time, and a suitable target sub-container (i.e., candidate container) is applied, and the completed deployment work is performed, including but not limited to container application and containerized deployment work, to ensure the accuracy of the deployment work of the front-end application and the stability of the front-end application. It is worth noting that the present invention will also release other containers corresponding to the front-end application after the front-end application is successfully deployed in the candidate container. The advantage of such a setting is that even if non-essential containers are released, it can perform other front-end deployment work, improve the utilization rate of the container, and avoid unnecessary resource consumption.
[0049] The information update condition can be understood as the change in the operating environment of the front-end application, and the updated code file can be understood as the code adjustment file of the front-end application when it is updated, including but not limited to the code corresponding to the added function, the code corresponding to the adjusted function, the code corresponding to the deleted function and the patch repair code. The purpose of this setting is to quickly realize the updated deployment of the front-end application.
[0050] The technical solution of this embodiment determines the corresponding target sub-container according to the application identifier of each front-end application in the application to be deployed, and then deploys each front-end application in the corresponding target sub-container in parallel according to the program files of each front-end application and the pre-set image building rules. It does not need to constantly detect and switch the host environment, and can also execute the deployment of the front-end application in parallel. The application deployment efficiency is high, and the complexity and cost of the deployment work are low. It solves the problem that the deployment of each application in the prior art requires the detection and adjustment of environmental information first, and after the environmental information is coordinated and consistent, the application to be deployed is installed or transmitted to the business system by deploying static files. The deployment work is cumbersome, inefficient, and costly. Once the environment is not coordinated and consistent, it will directly affect the function and stability of the application.
[0051] Figure 2 is a flow chart of another method for deploying an application provided by the present invention. Based on the above embodiments, this embodiment provides a preferred method for deploying an application. Specifically, Figure 2 As shown, the method specifically includes:
[0052] S201: Determine the application to be deployed.
[0053] The application to be deployed includes at least one front-end application.
[0054] S202: Determine a container requirement instruction based on an application identifier of at least one front-end application.
[0055] The container requirement instruction includes at least one container type, and the container type corresponds to the front-end application one by one.
[0056] S203: Send a container request instruction to the host container, and receive the container application identifier and feedback data sent by the host container.
[0057] S204: When the container application identifier indicates that the container application is successful, determine at least one target sub-container based on the feedback data.
[0058] Among them, the target sub-container corresponds to the front-end application one by one.
[0059] S205: Determine a deployment plan for at least one front-end application based on the image building rule, the program files of at least one front-end application, and the target sub-container.
[0060] S206. Execute the deployment plan of at least one front-end application in parallel, and deploy the at least one front-end application in at least one target sub-container.
[0061] Figure 3 FIG. 1 is a schematic diagram of a structure of a deployment device for an application program provided by the present invention. Figure 3 As shown, the device includes: an acquisition module 301, a determination module 302 and a deployment module 303.
[0062] The acquisition module 301 is used to determine the application to be deployed, wherein the application to be deployed includes at least one front-end application.
[0063] The determination module 302 is configured to determine a target container based on an application identifier of at least one front-end application, wherein the target container includes at least one target sub-container, and the target sub-container corresponds to the front-end application in a one-to-one manner.
[0064] The deployment module 303 is used to deploy the at least one front-end application in at least one target sub-container by using the program files of the at least one front-end application and the preset image building rules, so as to complete the deployment of the application to be deployed.
[0065] Optionally, the determination module 302 is specifically used to determine a container requirement instruction based on an application identifier of at least one front-end application, wherein the container requirement instruction includes at least one container type, and the container type corresponds to the front-end application one-to-one; send the container requirement instruction to the host container, and receive the container application identifier and feedback data sent by the host container; when the container application identifier indicates that the container application is successful, determine at least one target sub-container based on the feedback data.
[0066] Optionally, the deployment module 303 is specifically used to determine the deployment plan of at least one front-end application based on the image building rules, the program files of at least one front-end application and the target sub-container; execute the deployment plan of at least one front-end application in parallel, and deploy at least one front-end application in at least one target sub-container.
[0067] Optionally, for any front-end application, the deployment module 303 is specifically used to add the container information of the target sub-container to the root directory of the front-end application based on the image building rules, and create a configuration file under the root directory of the front-end application, wherein the configuration file includes environment information, dependency information, project build information and proxy service information; based on the environment information, dependency information, project build information, proxy service information and the program files of the front-end application, determine the deployment plan of the front-end application.
[0068] Optionally, for any front-end application, the deployment module 303 is specifically used to submit the program files of the front-end application to the warehouse and start the application deployment work; control the target sub-container to pull the program files of the front-end application from the warehouse, and determine the front-end project image package of the front-end application according to the deployment plan of the front-end application; add the program files of the front-end application to the front-end project image package of the front-end application, and run the target sub-container to complete the deployment of the front-end application.
[0069] Optionally, for any front-end application, the deployment module 303 is also used to determine whether the application identifier of the front-end application meets the information update conditions when the front-end application is not deployed for the first time; if the application identifier of the front-end application meets the information update conditions, determine the update code file of the front-end application, and add the update code file to the target sub-container corresponding to the front-end application; if the application identifier of the front-end application does not meet the information update conditions, determine a candidate container based on the application identifier of the front-end application, use the program files of the front-end application and pre-set image building rules to deploy the front-end application in the candidate container, and after the front-end application is successfully deployed, release the target sub-container corresponding to the front-end application.
[0070] The application deployment device provided in this embodiment can execute the application deployment method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.
[0071] Figure 4 : is a schematic diagram of the structure of an electronic device provided by the present invention. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workbenches, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or required herein.
[0072] like Figure 4 As shown, the electronic device 10 includes at least one processor 11, and a memory connected to the at least one processor 11, such as a read-only memory (ROM) 12, a random access memory (also called random access memory, RAM) 13, etc., wherein the memory stores a computer program that can be executed by at least one processor, and the processor 11 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 12 or the computer program loaded from the storage unit 18 to the random access memory (RAM) 13. In the RAM 13, various programs and data required for the operation of the electronic device 10 can also be stored. The processor 11, ROM 12 and RAM 13 are connected to each other through a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0073] A number of components in the electronic device 10 are connected to the I / O interface 15, including: an input unit 16, such as a keyboard, a mouse, etc.; an output unit 17, such as various types of displays, speakers, etc.; a storage unit 18, such as a disk, an optical disk, etc.; and a communication unit 19, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.
[0074] The processor 11 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The processor 11 executes the various methods and processes described above, such as a method for deploying an application.
[0075] In some embodiments, the deployment method of the application program may be implemented as a computer program, which is tangibly contained in a computer-readable storage medium, such as a storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 10 via the ROM 12 and / or the communication unit 19. When the computer program is loaded into the RAM 13 and executed by the processor 11, one or more steps of the deployment method of the application program described above may be performed. Alternatively, in other embodiments, the processor 11 may be configured to execute the deployment method of the application program in any other appropriate manner (e.g., by means of firmware).
[0076] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0077] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the computer program is executed by the processor, the functions / operations specified in the flow chart and / or block diagram are implemented. The computer program may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.
[0078] In the context of the present invention, a computer-readable storage medium may be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, device, or equipment. A computer-readable storage medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or equipment, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0079] To provide interaction with a user, the systems and techniques described herein may be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).
[0080] The systems and techniques described herein can be implemented in a computing system that includes backend components (e.g., as a data server) or a computing system that includes middleware components (e.g., an application server) or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein) or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.
[0081] A computing system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The client and server relationship is generated by computer programs running on the corresponding computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services.
[0082] In one embodiment, the present invention further includes a computer program product, the computer program product includes a computer program, and when the computer program is executed by a processor, the method for deploying an application program of any embodiment of the present invention is implemented.
[0083] The computer program product may be implemented in a computer program code for performing the operation of the present invention written in one or more programming languages or a combination thereof, including object-oriented programming languages and conventional procedural programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as an independent software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0084] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in the present invention can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solution of the present invention can be achieved, and this document does not limit this.
[0085] The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims
1. A method for deploying an application, characterized in that: include: Determining an application to be deployed, wherein the application to be deployed includes at least one front-end application; Determine a target container based on the application identifier of the at least one front-end application, wherein the target container includes at least one target sub-container, and the target sub-container corresponds to the front-end application in a one-to-one manner; The at least one front-end application is deployed in the at least one target sub-container by using the program file of the at least one front-end application and the preset image building rule, so as to complete the deployment work of the application to be deployed.
2. The method according to claim 1, characterized in that The determining the target container based on the application identifier of the at least one front-end application includes: Determine a container requirement instruction based on the application identifier of the at least one front-end application, wherein the container requirement instruction includes at least one container type, and the container type corresponds to the front-end application in a one-to-one manner; Send the container requirement instruction to the host container, and receive the container application identifier and feedback data sent by the host container; When the container application identifier indicates that the container application is successful, the at least one target sub-container is determined based on the feedback data.
3. The method according to claim 1, characterized in that The utilizing the program file of the at least one front-end application and the preset image building rule to deploy the at least one front-end application in the at least one target sub-container includes: Determine a deployment scheme for the at least one front-end application based on the image building rule, the program file of the at least one front-end application, and the target sub-container; The deployment scheme of the at least one front-end application is executed in parallel, and the at least one front-end application is deployed in the at least one target sub-container.
4. The method according to claim 3, characterized in that For any one of the front-end applications, determining a deployment scheme of the front-end application based on the image building rule, the program file of the front-end application, and the target sub-container includes: Based on the image building rule, add the container information of the target subcontainer to the root directory of the front-end application, and create a configuration file under the root directory of the front-end application, wherein the configuration file includes environment information, dependency information, project building information and proxy service information; A deployment scheme of the front-end application is determined based on the environment information, the dependency information, the project construction information, the proxy service information and the program file of the front-end application.
5. The method according to claim 3, characterized in that: For any one of the front-end applications, executing the deployment solution of the front-end application to deploy the front-end application in the target sub-container includes: Submit the program files of the front-end application to the warehouse and start the application deployment work; Control the target sub-container to pull the program file of the front-end application from the warehouse, and determine the front-end project image package of the front-end application according to the deployment plan of the front-end application; The program files of the front-end application are added to the front-end project image package of the front-end application, and the target sub-container is run to complete the deployment of the front-end application.
6. The method according to claim 1, characterized in that For any front-end application, the method further includes: When the front-end application is not deployed for the first time, determining whether the application identifier of the front-end application meets the information update condition; If the application identifier of the front-end application meets the information update condition, determining an update code file of the front-end application, and adding the update code file to the target sub-container corresponding to the front-end application; If the application identifier of the front-end application does not meet the information update condition, a candidate container is determined based on the application identifier of the front-end application, and the front-end application is deployed in the candidate container using the program file of the front-end application and a pre-set image building rule. After the front-end application is successfully deployed, the target sub-container corresponding to the front-end application is released.
7. A deployment device for an application, characterized in that: A method for deploying an application program according to any one of claims 1 to 6, wherein the application program deployment device comprises: An acquisition module, used to determine the application to be deployed, wherein the application to be deployed includes at least one front-end application; A determination module, configured to determine a target container based on an application identifier of the at least one front-end application, wherein the target container includes at least one target sub-container, and the target sub-container corresponds to the front-end application in a one-to-one manner; The deployment module is used to deploy the at least one front-end application in the at least one target sub-container by using the program file of the at least one front-end application and the pre-set image building rules to complete the deployment of the application to be deployed.
8. An electronic device, characterized in that: The electronic device comprises: at least one processor; and a memory communicatively coupled to the at least one processor; The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the method for deploying an application program as described in any one of claims 1 to 6.
9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the application deployment method described in any one of claims 1 to 6 when executed.
10. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the computer program implements the method for deploying the application program according to any one of claims 1 to 6.