Container-based development environment deployment method and apparatus

By parsing the development environment creation request initiated by the user in the browser and creating the development environment in the container management cluster, the cumbersome review process and complex adaptation problems in the existing technology are solved, and the rapid and efficient deployment of development environments and enhanced security are achieved.

CN119316290BActive Publication Date: 2026-01-30INDUSTRIAL AND COMMERCIAL BANK OF CHINA
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410759664.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-06-13
Publication Date
2026-01-30
Estimated Expiration
2044-06-13

AI Technical Summary

Technical Problem

In development environment deployment scenarios, the cumbersome review process in existing technologies leads to low development efficiency, and the runtime environment adaptation is highly complex during containerized deployment.

Method used

By having users initiate a development environment creation request in their browser, parsing the startup parameters, creating the development environment in the container management cluster, and sending login information via email, the process is simplified and security is enhanced.

Benefits of technology

It enables rapid deployment of the development environment, improves the efficiency of software project development, simplifies the adaptation of the runtime environment, and enhances the security of the development environment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119316290B_ABST
    Figure CN119316290B_ABST
Patent Text Reader

Abstract

This disclosure provides a container-based development environment deployment method, relating to the field of cloud computing technology and applicable to the financial technology field. The method includes: responding to a user-initiated development environment creation request; parsing the development environment creation request to determine startup parameters, wherein the development environment creation request is initiated by the user through a browser on a web application; creating the development environment in the form of a container in a container management cluster according to the startup parameters; receiving and parsing information returned by the container management cluster to determine development environment login information; and sending the development environment login information to the user via email. This disclosure also provides a container-based development environment deployment apparatus, device, storage medium, and program product.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of cloud computing technology, specifically to the field of container technology, and more specifically to a container-based development environment deployment method, apparatus, device, storage medium, and program product. Background Technology

[0002] In development environment deployment scenarios, project teams need to submit applications to obtain a usable R&D environment. This cumbersome approval process significantly reduces development efficiency and extends project timelines. Furthermore, in the containerization deployment process of existing technologies, the optimized target runtime parameters of the development environment need to be preserved in the image file, which increases the complexity of runtime environment adaptation.

[0003] It should be noted that the information disclosed in the background section above is only used to enhance the understanding of the background of this disclosure, and therefore may include information that does not constitute prior art known to those skilled in the art. Summary of the Invention

[0004] In view of the above problems, this disclosure provides a container-based development environment deployment method, apparatus, device, storage medium and program product that enables rapid deployment.

[0005] According to a first aspect of this disclosure, a container-based development environment deployment method is provided, the method comprising:

[0006] In response to a user-initiated development environment creation request, the development environment creation request is parsed to determine startup parameters, wherein the development environment creation request is initiated by the user through a browser on a web application;

[0007] The development environment is created in the container management cluster as a container based on the startup parameters.

[0008] Receive and parse the information returned by the container management cluster to determine the development environment login information; and

[0009] The development environment login information will be sent to the user via email.

[0010] According to embodiments of this disclosure, the startup parameters include an email address and login password information, and the step of creating a development environment in the form of a container in the container management cluster based on the startup parameters includes:

[0011] Submit a creation request to the container management cluster used for deploying the development environment, using the email address and login password as development environment startup parameters;

[0012] Parse the creation request to pull the image file; and

[0013] Create a container based on the image file and the development environment startup parameters.

[0014] According to embodiments of this disclosure, parsing the creation request to retrieve the image file includes:

[0015] Parse the creation request to determine the development environment configuration information and startup parameters; and

[0016] Based on the configuration information of the development environment, pull the pre-configured development environment image file from the image repository.

[0017] According to embodiments of this disclosure, creating a container based on the image file and the development environment startup parameters includes:

[0018] Configure the container according to the configuration information of the development environment, including container name, network settings, storage volume mount and resource limits;

[0019] Set the development environment startup parameters to the container's environment variables; and

[0020] Start the newly created container to run the development environment requested by the user.

[0021] According to embodiments of this disclosure, starting the newly created container to run the user-requested development environment includes:

[0022] Execute the startup command to start the tools in the development environment; and

[0023] Run the application in the development environment.

[0024] According to embodiments of this disclosure, parsing the development environment creation request to determine startup parameters includes:

[0025] Parse the user's request to extract the submitted email address and login password; and

[0026] The user-submitted email address and login password information are used to construct startup parameters in key-value pairs.

[0027] A second aspect of this disclosure provides a container-based development environment deployment apparatus, the apparatus comprising:

[0028] A parsing module is used to respond to a development environment creation request initiated by a user, parse the development environment creation request to determine startup parameters, wherein the development environment creation request is initiated by the user through a browser on a web application;

[0029] A module is created to create a development environment in the form of a container within the container management cluster based on the startup parameters.

[0030] The determination module is used to receive and parse the information returned by the container management cluster to determine the development environment login information; and

[0031] The sending module is used to send the development environment login information to the user in the form of an email.

[0032] According to embodiments of this disclosure, the creation module includes: a submission submodule, a first parsing submodule, and a creation submodule.

[0033] The submission submodule is used to submit a creation request to the container management cluster used to deploy the development environment, using the email address and login password information as development environment startup parameters.

[0034] The first parsing submodule is used to parse the creation request to retrieve the image file; and

[0035] Create a submodule to create a container based on the image file and the development environment startup parameters.

[0036] According to embodiments of this disclosure, the parsing submodule includes a parsing unit and an image file acquisition unit.

[0037] The parsing unit is used to parse the creation request to determine the configuration information and startup parameters of the development environment; and

[0038] The image file acquisition unit is used to pull the pre-configured image file of the development environment from the image repository according to the configuration information of the development environment.

[0039] According to embodiments of this disclosure, the creation of a submodule includes a container configuration unit, an environment variable setting unit, and a startup unit.

[0040] The container configuration unit is used to configure containers according to the configuration information of the development environment, including container name, network settings, storage volume mount and resource limits;

[0041] An environment variable setting unit is used to set the development environment startup parameters into the container's environment variables; and

[0042] The startup unit is used to start a newly created container to run the development environment requested by the user.

[0043] According to embodiments of this disclosure, the startup unit is also used to execute startup commands to start tools in the development environment; and to run applications in the development environment.

[0044] According to embodiments of this disclosure, the parsing module includes a second parsing submodule and a construction submodule.

[0045] The second parsing submodule is used to parse user-initiated requests to extract the user-submitted email address and login password information; and

[0046] The build submodule is used to construct startup parameters in key-value pairs from the user-submitted email address and login password information.

[0047] A third aspect of this disclosure provides an electronic device comprising: one or more processors; and a memory for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors perform the container-based development environment deployment method described above.

[0048] A fourth aspect of this disclosure also provides a computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, cause the processor to perform the container-based development environment deployment method described above.

[0049] The fifth aspect of this disclosure also provides a computer program product, including a computer program that, when executed by a processor, implements the above-described container-based development environment deployment method.

[0050] The container-based development environment deployment method provided by the embodiments of this disclosure responds to a user-initiated development environment creation request, parses the request to determine startup parameters, the request being initiated by the user through a browser on a web application; creates the development environment in the form of a container in a container management cluster according to the startup parameters; receives and parses information returned by the container management cluster to determine development environment login information; and sends the development environment login information to the user via email. Compared to related technologies, users can directly request the creation of a development environment through a browser without submitting an application, simplifying the process of obtaining an available development environment and improving the efficiency of software project development; furthermore, transmitting the user's submitted email address and login password as development environment startup parameters to the container management cluster enhances the security of the development environment. Attached Figure Description

[0051] The foregoing contents, as well as other objects, features, and advantages of this disclosure, will become clearer from the following description of embodiments with reference to the accompanying drawings, in which:

[0052] Figure 1 The illustration schematically depicts application scenarios of container-based development environment deployment methods, apparatus, devices, storage media, and program products according to embodiments of the present disclosure;

[0053] Figure 2 The flowchart illustrating a container-based development environment deployment method according to an embodiment of the present disclosure is shown schematically.

[0054] Figure 3 The flowchart illustrating a container-based development environment deployment method according to another embodiment of the present disclosure is shown schematically.

[0055] Figure 4 The flowchart illustrating a container-based development environment deployment method according to yet another embodiment of the present disclosure is shown.

[0056] Figure 5 A flowchart illustrating a method for obtaining an image file according to an embodiment of the present disclosure is shown schematically.

[0057] Figure 6 This illustration schematically shows a flowchart of creating a container based on the image file and the development environment startup parameters according to an embodiment of the present disclosure;

[0058] Figure 7 This schematically illustrates a structural block diagram of a container-based development environment deployment apparatus according to an embodiment of the present disclosure; and

[0059] Figure 8 A block diagram schematically illustrates an electronic device suitable for implementing a container-based development environment deployment method according to an embodiment of the present disclosure. Detailed Implementation

[0060] The embodiments of the present disclosure will now be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the disclosure. In the following detailed description, numerous specific details are set forth to provide a thorough understanding of the embodiments of the present disclosure for ease of explanation. However, it will be apparent that one or more embodiments may be practiced without these specific details. Furthermore, descriptions of well-known structures and techniques are omitted in the following description to avoid unnecessarily obscuring the concepts of the present disclosure.

[0061] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit this disclosure. The terms “comprising,” “including,” etc., as used herein indicate the presence of the stated features, steps, operations, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, or components.

[0062] All terms used herein (including technical and scientific terms) have the meanings commonly understood by those skilled in the art, unless otherwise defined. It should be noted that the terms used herein are to be interpreted in a manner consistent with the context of this specification, and not in an idealized or overly rigid way.

[0063] When using expressions such as "at least one of A, B and C", they should generally be interpreted in accordance with the meaning that is commonly understood by those skilled in the art (e.g., "a system having at least one of A, B and C" should include, but is not limited to, a system having A alone, a system having B alone, a system having C alone, a system having A and B, a system having A and C, a system having B and C, and / or a system having A, B and C, etc.).

[0064] First, the terminology appearing in the embodiments of this disclosure will be explained:

[0065] Dev environment: A development environment refers to a dedicated working environment provided for software developers to write, test, and debug code.

[0066] Containerization is a lightweight virtualization technology that packages applications and their dependencies together into a standardized unit to enable rapid, consistent, and reliable deployment of applications.

[0067] Kubernetes is an open-source container orchestration platform used to automate the deployment, scaling, and management of containerized applications.

[0068] To address the aforementioned technical issues, embodiments of this disclosure provide a container-based development environment deployment method. The method includes: responding to a user-initiated development environment creation request; parsing the development environment creation request to determine startup parameters, wherein the development environment creation request is initiated by the user through a browser on a web application; creating a development environment in the form of a container within a container management cluster according to the startup parameters; receiving and parsing information returned by the container management cluster to determine development environment login information; and sending the development environment login information to the user via email.

[0069] Figure 1 The illustration schematically depicts an application scenario of a container-based development environment deployment method, apparatus, device, storage medium, and program product according to embodiments of the present disclosure.

[0070] like Figure 1 As shown, application scenario 100 according to this embodiment may include a container-based development environment deployment scenario. Network 104 is used as a medium to provide a communication link between terminal devices 101, 102, 103 and server 105. Network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables, etc.

[0071] Users can use terminal devices 101, 102, and 103 to interact with server 105 via network 104 to receive or send messages, etc. Various communication client applications can be installed on terminal devices 101, 102, and 103, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social media platform software, etc. (for example only).

[0072] Terminal devices 101, 102, and 103 can be various electronic devices with displays and web browsing capabilities, including but not limited to smartphones, tablets, laptops, and desktop computers.

[0073] Server 105 can be a backend server that can execute the container-based development environment deployment method provided in this embodiment of the present disclosure. In response to a development environment creation request initiated by a user, the server parses the development environment creation request to determine startup parameters. The development environment creation request is initiated by the user through a browser on a web application. The server creates a development environment in the form of a container in a container management cluster according to the startup parameters. The server receives and parses the information returned by the container management cluster to determine the development environment login information. The server sends the development environment login information to the user in the form of an email.

[0074] It should be noted that the container-based development environment deployment method provided in this disclosure embodiment can generally be executed by server 105. Correspondingly, the container-based development environment deployment device provided in this disclosure embodiment can generally be located in server 105. The container-based development environment deployment method provided in this disclosure embodiment can also be executed by a server or server cluster that is different from server 105 and capable of communicating with terminal devices 101, 102, 103 and / or server 105. Correspondingly, the container-based development environment deployment device provided in this disclosure embodiment can also be located in a server or server cluster that is different from server 105 and capable of communicating with terminal devices 101, 102, 103 and / or server 105.

[0075] It should be understood that Figure 1 The number of terminal devices, networks, and servers shown is merely illustrative. Depending on implementation needs, any number of terminal devices, networks, and servers can be included.

[0076] It should be noted that the container-based development environment deployment method and apparatus determined in the embodiments of this disclosure can be used in the field of cloud computing technology, the field of financial technology, and any field other than the financial field. The application fields of the container-based development environment deployment method and apparatus determined in the embodiments of this disclosure are not limited.

[0077] The following will be based on Figure 1The described application scenarios, through Figures 2-6 The container-based development environment deployment method of the present disclosure embodiments will be described in detail.

[0078] Figure 2 A flowchart illustrating a container-based development environment deployment method according to an embodiment of this disclosure is shown schematically. Figure 2 As shown, the container-based development environment deployment method of this embodiment includes operations S210 to S240, which can be executed by a server or other computing device.

[0079] In operation S210, in response to a user-initiated development environment creation request, the development environment creation request is parsed to determine startup parameters.

[0080] According to embodiments of this disclosure, the development environment creation request is initiated by the user through a browser on a web application.

[0081] In one example, to simplify the process of obtaining an available development environment and improve the development efficiency of software projects, a web application, Dev_Create_Services, is pre-written. When a Dev development environment needs to be created, the user requests Dev_Create_Services through their browser; the corresponding configuration is then performed through the front-end web page. The user fills in personal information on the page, including their company email address (used to receive login information after successful Dev environment creation), sets a login password, and clicks submit.

[0082] In operation S220, a development environment is created in the container management cluster in the form of a container according to the startup parameters.

[0083] In one example, when Dev_Create_Services receives a creation request, it submits the request to the container management cluster used to deploy the Dev environment. During submission, the user's email address and login password are passed to the container management cluster as startup parameters for the Dev environment. The container management cluster then creates the Dev environment based on a pre-prepared Dev environment image file, which contains all the necessary tools for the Dev environment.

[0084] In operation S230, the information returned by the container management cluster is received and parsed to determine the development environment login information.

[0085] In operation S240, the development environment login information is sent to the user via email.

[0086] In one example, Dev_Create_Services processes the response returned by the container management cluster. If the creation request succeeds, the container management cluster returns a status code and a JSON object containing information about the newly created Dev environment. Dev_Create_Services parses this JSON object, extracts the Dev environment information, and then sends this information to the user via email.

[0087] The container-based development environment deployment method provided by the embodiments of this disclosure responds to a user-initiated development environment creation request, parses the request to determine startup parameters, the request being initiated by the user through a browser on a web application; creates the development environment in the form of a container in a container management cluster according to the startup parameters; receives and parses information returned by the container management cluster to determine development environment login information; and sends the development environment login information to the user via email. Compared to related technologies, users can directly request the creation of a development environment through a browser without submitting an application, simplifying the process of obtaining an available development environment and improving the efficiency of software project development; furthermore, transmitting the user's submitted email address and login password as development environment startup parameters to the container management cluster enhances the security of the development environment.

[0088] Figure 3 A flowchart illustrating a container-based development environment deployment method according to another embodiment of this disclosure is shown schematically. Figure 3 As shown, operation 210 includes operation S211 and operation S212.

[0089] In operation S211, the user-initiated request is parsed to extract the user-submitted email address and login password information; and

[0090] In operation S212, the user-submitted email address and login password information are used to construct startup parameters in key-value pairs.

[0091] In one example, when Dev_Create_Services receives a creation request, it performs the following steps: 1. Parse the request: First, Dev_Create_Services parses the user's request, extracting the submitted email address and login password. 2. Construct startup parameters: Then, Dev_Create_Services constructs a startup parameter from the submitted email address and login password. This startup parameter is a key-value pair, where the key is the parameter name and the value is the information submitted by the user. For example, the email address might be constructed as {"email": "user@example.com"}, and the login password might be constructed as {"password": "user_password"}. 3. Submit the creation request: Dev_Create_Services submits the creation request to the container management cluster used to deploy the Dev environment. This request is typically an HTTP POST request; the request URL is the API address of the container management cluster, and the request body is a JSON object containing the configuration information and startup parameters of the Dev environment to be created.

[0092] Figure 4 A flowchart illustrating a container-based development environment deployment method provided according to yet another embodiment of this disclosure is shown. Figure 5 A flowchart illustrating a method for obtaining an image file according to an embodiment of the present disclosure is shown. Figure 6 The illustration schematically shows a flowchart of creating a container based on the image file and the development environment startup parameters according to an embodiment of the present disclosure.

[0093] like Figure 4 As shown, operation S220 includes operations S221 to S223.

[0094] In operation S221, the email address and login password information are submitted as development environment startup parameters to the container management cluster used to deploy the development environment.

[0095] In operation S222, the creation request is parsed to retrieve the image file.

[0096] like Figure 5 As shown, operation S222 includes operation S2221 and operation S2222.

[0097] In operation S2221, the creation request is parsed to determine the configuration information and startup parameters of the development environment.

[0098] In operation S2222, the pre-configured development environment image file is pulled from the image repository according to the configuration information of the development environment.

[0099] In one example, the container management cluster parses the received create request. This request is a JSON object containing configuration information and startup parameters for the Dev environment to be created. The configuration information includes a field specifying the location of the Dev environment image; this location is typically a URL pointing to the image file's location in the image repository. The container management cluster then pulls the pre-prepared Dev environment image from the specified image repository. This image contains all the necessary tools for the Dev environment. For example, the container management cluster sends an HTTP GET request to the image repository, with the request URL being the image location. Upon receiving the request, the image repository sends the image file to the container management cluster. The image file is a compressed package containing a file system and metadata. The file system contains the necessary tools for the Dev environment, and the metadata contains information on how to run these tools. Optionally, after receiving the image file, the container management cluster saves it to its local image cache. This way, when the same Dev environment needs to be created later, the image can be read directly from the local cache without having to pull it from the image repository again.

[0100] In operation S223, a container is created based on the image file and the development environment startup parameters.

[0101] like Figure 6 As shown, operation S223 includes operations S2231 to S2233.

[0102] When operating S2231, configure the container according to the configuration information of the development environment.

[0103] The configuration information includes container name, network settings, storage volume mounts, and resource limits;

[0104] In operation S2232, the development environment startup parameters are set into the container's environment variables.

[0105] In operation S2233, start the newly created container to run the development environment requested by the user.

[0106] According to embodiments of this disclosure, a startup command is executed to start tools in the development environment; and an application in the development environment is run.

[0107] In one example, the container management cluster creates a new container based on a pulled image. During container creation, the cluster sets the startup parameters from the request into the container's environment variables. This process typically includes the following steps:

[0108] Configuring containers: The container management cluster first configures the new container based on the configuration information in the request. This configuration information includes the container name, network settings, storage volume mounts, resource limits, etc.

[0109] Setting environment variables: The container management cluster sets the startup parameters in the request into the container's environment variables. Environment variables are a way to pass configuration information inside a container; they can be read and used by applications running within the container. In this example, the startup parameters include the user-submitted email address and login password.

[0110] Starting the container: Finally, the container management cluster will start the newly created container. Once started, the container will run the Dev environment within it.

[0111] During container startup, the container management cluster executes the startup command specified in the container image. This command typically starts the various tools in the Dev environment. After the container starts, it runs the Dev environment within it. This process usually includes the following steps:

[0112] Execute the startup command: The container management cluster executes the startup command specified in the image inside the container. This command typically starts various tools in the Dev environment.

[0113] Running applications: After the startup command is executed, the applications in the Dev environment will run inside the container. These applications can access and use resources inside the container, such as CPU, memory, storage volumes, and startup parameters set in environment variables.

[0114] In the embodiments disclosed herein, since the Dev development environment runs within a container, the resource isolation features of containers can be leveraged to ensure that its operation does not affect the host machine or other containers. Simultaneously, containers also provide certain security guarantees, such as namespace isolation and access control, to prevent malicious code from escaping the container. Container technology can isolate resources at the operating system level. Each container has its own file system, network stack, process space, etc., meaning that a process running in one container cannot directly access the resources of other containers or the host machine. This isolation makes each container appear to run in its own independent environment, thus providing a lightweight virtualization. The resource isolation feature of containers also provides security guarantees. Because resources between containers are isolated, even if one container is attacked, the attacker cannot directly access the resources of other containers or the host machine. Furthermore, containers can use various security mechanisms, such as user namespaces, Seccomp, AppArmor, SELinux, etc., to restrict the permissions of container processes and prevent malicious code from escaping the container. Due to the resource isolation and security features of containers, isolated development environments are created within them. This means that developers can install and configure the necessary development tools in their own containers without affecting the environments of other developers. This greatly simplifies the management and maintenance of the development environment.

[0115] Through the embodiments of this disclosure, users can directly request the creation of a Dev development environment via a browser without submitting an application, simplifying the process of obtaining an available development environment and improving the efficiency of software project development. The user-submitted email address and login password are passed to the container management cluster as startup parameters for the Dev environment, enhancing the security of the development environment. The container management cluster creates the Dev environment based on a pre-prepared Dev environment image, which contains all the necessary tools, improving the replicability and portability of the development environment, simplifying runtime environment adaptation work, and reducing the time and effort spent by performance optimization personnel on runtime environment adaptation.

[0116] Based on the above-described container-based development environment deployment method, this disclosure also provides a container-based development environment deployment apparatus. The following will be combined with... Figure 7 The device is described in detail.

[0117] Figure 7 The diagram schematically illustrates a structural block diagram of a container-based development environment deployment apparatus according to an embodiment of the present disclosure. Figure 7 As shown, the container-based development environment deployment device 700 of this embodiment includes a parsing module 710, a creation module 720, a determination module 730, and a sending module 740.

[0118] The parsing module 710 is used to respond to a user-initiated development environment creation request, parsing the request to determine startup parameters. The development environment creation request is initiated by the user through a browser on a web application. In one embodiment, the parsing module 710 can be used to perform the operation S210 described above, which will not be repeated here.

[0119] The creation module 720 is used to create a development environment in the form of a container in the container management cluster according to the startup parameters. In one embodiment, the creation module 720 can be used to perform the operation S220 described above, which will not be repeated here.

[0120] The determination module 730 is used to receive and parse the information returned by the container management cluster to determine the development environment login information. In one embodiment, the determination module 730 can be used to perform the operation S230 described above, which will not be repeated here.

[0121] The sending module 740 is used to send the development environment login information to the user in the form of an email. In one embodiment, the traffic forwarding module 740 can be used to perform the operation S240 described above, which will not be repeated here.

[0122] According to embodiments of this disclosure, the creation module includes: a submission submodule, a first parsing submodule, and a creation submodule.

[0123] The submission submodule is used to submit a creation request to the container management cluster used to deploy the development environment, using the email address and login password information as development environment startup parameters.

[0124] The first parsing submodule is used to parse the creation request to retrieve the image file; and

[0125] Create a submodule to create a container based on the image file and the development environment startup parameters.

[0126] According to embodiments of this disclosure, the parsing submodule includes a parsing unit and an image file acquisition unit.

[0127] The parsing unit is used to parse the creation request to determine the configuration information and startup parameters of the development environment; and

[0128] The image file acquisition unit is used to pull the pre-configured image file of the development environment from the image repository according to the configuration information of the development environment.

[0129] According to embodiments of this disclosure, the creation of a submodule includes a container configuration unit, an environment variable setting unit, and a startup unit.

[0130] The container configuration unit is used to configure containers according to the configuration information of the development environment, including container name, network settings, storage volume mount and resource limits;

[0131] An environment variable setting unit is used to set the development environment startup parameters into the container's environment variables; and

[0132] The startup unit is used to start a newly created container to run the development environment requested by the user.

[0133] According to embodiments of this disclosure, the startup unit is also used to execute startup commands to start tools in the development environment; and to run applications in the development environment.

[0134] According to embodiments of this disclosure, the parsing module includes a second parsing submodule and a construction submodule.

[0135] The second parsing submodule is used to parse user-initiated requests to extract the user-submitted email address and login password information; and

[0136] The build submodule is used to construct startup parameters in key-value pairs from the user-submitted email address and login password information.

[0137] According to embodiments of this disclosure, any plurality of modules among the parsing module 710, the creation module 720, the determination module 730, and the sending module 740 can be combined into one module, or any one of these modules can be split into multiple modules. Alternatively, at least part of the functionality of one or more of these modules can be combined with at least part of the functionality of other modules and implemented in one module. According to embodiments of this disclosure, at least one of the parsing module 710, the creation module 720, the determination module 730, and the sending module 740 can be at least partially implemented as hardware circuitry, such as a field-programmable gate array (FPGA), a programmable logic array (PLA), a system-on-a-chip, a system-on-a-substrate, a system-on-package, an application-specific integrated circuit (ASIC), or any other reasonable means of integrating or packaging circuitry, or implemented in software, hardware, or firmware, or in any suitable combination of any of these three implementation methods. Alternatively, at least one of the parsing module 710, the creation module 720, the determination module 730, and the sending module 740 can be at least partially implemented as a computer program module, which, when run, can perform corresponding functions.

[0138] Figure 8 A block diagram schematically illustrates an electronic device suitable for implementing a container-based development environment deployment method according to an embodiment of the present disclosure.

[0139] like Figure 8As shown, an electronic device 900 according to an embodiment of the present disclosure includes a processor 901, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 902 or a program loaded from a storage portion 908 into a random access memory (RAM) 903. The processor 901 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or an associated chipset and / or a special-purpose microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 901 may also include onboard memory for caching purposes. The processor 901 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.

[0140] RAM 903 stores various programs and data required for the operation of electronic device 900. Processor 901, ROM 902, and RAM 903 are interconnected via bus 904. Processor 901 performs various operations of the method flow according to embodiments of the present disclosure by executing programs in ROM 902 and / or RAM 903. It should be noted that the programs may also be stored in one or more memories other than ROM 902 and RAM 903. Processor 901 may also perform various operations of the method flow according to embodiments of the present disclosure by executing programs stored in said one or more memories.

[0141] According to embodiments of this disclosure, the electronic device 900 may further include an input / output (I / O) interface 905, which is also connected to a bus 904. The electronic device 900 may also include one or more of the following components connected to the I / O interface 905: an input section 906 including a keyboard, mouse, etc.; an output section 907 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 908 including a hard disk, etc.; and a communication section 909 including a network interface card such as a LAN card, modem, etc. The communication section 909 performs communication processing via a network such as the Internet. A drive 909 is also connected to the I / O interface 905 as needed. A removable medium 911, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on the drive 909 as needed so that computer programs read from it can be installed into the storage section 908 as needed.

[0142] This disclosure also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or it may exist independently and not assembled into the device / apparatus / system. The computer-readable storage medium carries one or more programs, which, when executed, implement the container-based development environment deployment method according to embodiments of this disclosure.

[0143] According to embodiments of this disclosure, the computer-readable storage medium may be a non-volatile computer-readable storage medium, such as including, but not limited to: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this disclosure, the computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. For example, according to embodiments of this disclosure, the computer-readable storage medium may include ROM 902 and / or RAM 903 and / or one or more memories other than ROM 902 and RAM 903 described above.

[0144] Embodiments of this disclosure also include a computer program product comprising a computer program containing program code for performing the methods shown in the flowchart. When the computer program product is run on a computer system, the program code enables the computer system to implement the container-based development environment deployment method provided in embodiments of this disclosure.

[0145] When the computer program is executed by the processor 901, it performs the functions defined in the system / apparatus of this disclosure embodiments. According to embodiments of this disclosure, the systems, apparatuses, modules, units, etc., described above can be implemented by computer program modules.

[0146] In one embodiment, the computer program may rely on a tangible storage medium such as an optical storage device or a magnetic storage device. In another embodiment, the computer program may also be transmitted and distributed in the form of signals over a network medium, and downloaded and installed via the communication section 909, and / or installed from a removable medium 911. The program code contained in the computer program can be transmitted using any suitable network medium, including but not limited to: wireless, wired, etc., or any suitable combination thereof.

[0147] In such an embodiment, the computer program can be downloaded and installed from a network via the communication section 909, and / or installed from the removable medium 911. When the computer program is executed by the processor 901, it performs the functions defined in the system of this disclosure embodiment. According to embodiments of this disclosure, the systems, devices, apparatuses, modules, units, etc., described above can be implemented by computer program modules.

[0148] According to embodiments of this disclosure, program code for executing the computer programs provided in embodiments of this disclosure can be written in any combination of one or more programming languages. Specifically, these computational programs can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages ​​include, but are not limited to, languages ​​such as Java, C++, Python, "C", or similar programming languages. The program code can execute entirely on a user's computing device, partially on a user's device, partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).

[0149] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0150] Those skilled in the art will understand that the features described in the various embodiments and / or claims of this disclosure can be combined or combined in various ways, even if such combinations or combinations are not explicitly described in this disclosure. In particular, the features described in the various embodiments and / or claims of this disclosure can be combined or combined in various ways without departing from the spirit and teachings of this disclosure. All such combinations and / or combinations fall within the scope of this disclosure.

[0151] The embodiments of this disclosure have been described above. However, these embodiments are for illustrative purposes only and are not intended to limit the scope of this disclosure. Although various embodiments have been described above, this does not mean that the measures in the various embodiments cannot be used advantageously in combination. The scope of this disclosure is defined by the appended claims and their equivalents. Various substitutions and modifications can be made by those skilled in the art without departing from the scope of this disclosure, and all such substitutions and modifications should fall within the scope of this disclosure.

Claims

1. A container-based development environment deployment method, characterized by, The method comprises: In response to a user-initiated development environment creation request, parsing the development environment creation request to determine start parameters, the start parameters comprising: mailbox address and login password information, the development environment creation request being initiated by a user on a web application through a browser; Creating a development environment in the form of a container in a container management cluster according to the start parameters; Receiving and parsing information returned by the container management cluster to determine development environment login information; and Sending the development environment login information to the user in the form of an email, Wherein, the development environment creation in the form of a container in the container management cluster according to the start parameters comprises: Submitting a creation request to the container management cluster for deploying a development environment with the mailbox address and the login password information as development environment start parameters; Parsing the creation request to pull an image file, specifically comprising: parsing the creation request to determine configuration information of the development environment and development environment start parameters; and pulling a pre-configured image file of the development environment from an image repository according to the configuration information of the development environment; and Creating a container according to the image file and the development environment start parameters, specifically comprising: configuring the container according to the configuration information of the development environment, the configuration information comprising container name, network settings, storage volume mounting, and resource limits; setting the development environment start parameters to the environment variables of the container; and starting the newly created container to run the development environment requested by the user.

2. The method of claim 1, wherein, The starting of the newly created container to run the development environment requested by the user comprises: Executing a start command to start a tool in the development environment; and Running an application program in the development environment.

3. The method according to claim 1 or 2, characterized in that, The parsing of the development environment creation request to determine start parameters comprises: Parsing the user-initiated request to extract the mailbox address and login password information submitted by the user; and Building the mailbox and login password information submitted by the user into start parameters in the form of key-value pairs.

4. A container-based development environment deployment apparatus characterized by comprising: The apparatus comprises: A parsing module configured to, in response to a user-initiated development environment creation request, parse the development environment creation request to determine start parameters, the start parameters comprising: mailbox address and login password information, the development environment creation request being initiated by a user on a web application through a browser; A creating module configured to create a development environment in the form of a container in a container management cluster according to the start parameters; A determining module configured to receive and parse information returned by the container management cluster to determine development environment login information; and A sending module configured to send the development environment login information to the user in the form of an email, Wherein, the development environment creation in the form of a container in the container management cluster according to the start parameters comprises: Submitting a creation request to the container management cluster for deploying a development environment with the mailbox address and the login password information as development environment start parameters; Parsing the creation request to pull an image file, specifically comprising: parsing the creation request to determine configuration information of the development environment and development environment start parameters; and pulling a pre-configured image file of the development environment from an image repository according to the configuration information of the development environment; and Creating a container according to the image file and the development environment start parameters, specifically comprising: configuring the container according to the configuration information of the development environment, the configuration information comprising container name, network settings, storage volume mounting, and resource limits; setting the development environment start parameters to the environment variables of the container; and starting the newly created container to run the development environment requested by the user. The container is created according to the mirror file and the development environment startup parameter, specifically including: configuring the container according to configuration information of the development environment, the configuration information including a container name, network settings, storage volume mounting, and resource limits; setting the development environment startup parameter into an environment variable of the container; and starting the newly created container to run the development environment requested by the user. 5.An electronic device, comprising: one or more processors; storage means for storing one or more computer programs, characterized in that the one or more processors execute the one or more computer programs to implement the steps of the method according to any one of claims 1-3.

6. A computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program is executed by the processor to implement the steps of the method according to any one of claims 1-3.

7. A computer program product comprising a computer program, characterized in that, The computer program is executed by the processor to implement the steps of the method according to any one of claims 1-3. The computer program is executed by the processor to implement the steps of the method according to any one of claims 1-3.

Citation Information

Patent Citations

  • Application deployment method and device, equipment and medium

    CN116107688A

  • Droplet execution engine for dynamic server application deployment

    US20110265081A1