Application publishing control method, system and server
By determining the interaction relationship between the target server and the application project in the distributed application system, and using version control and integration tools to generate configuration scripts, the deployment of the application project to the container is automatically controlled, which solves the problems of inefficient operation and maintenance process, lack of configuration management and insufficient reliability, and realizes efficient and convenient containerized application release.
Patent Information
- Application Number
- CN202511293648.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-11
- Publication Date
- 2025-12-05
- Estimated Expiration
- 2045-09-11
AI Technical Summary
Existing technologies in distributed application systems suffer from inefficient operation and maintenance processes, lack of configuration management mechanisms, defects in team collaboration models, and insufficient reliability and observability, resulting in low development and deployment efficiency and poor system stability and maintainability.
By determining the interaction between the target server and the application project, version control tools are used to obtain code and deployment information, environment configuration files are generated, and integration and deployment tools are used to generate configuration scripts. This automates the deployment of the application project into the container and, combined with operation and maintenance tools, achieves automated and efficient operation and maintenance management.
It has made the containerized application deployment process more efficient and convenient, solved the problems of complex configuration file management, inconvenient deployment and rollback, and high dependence of operation and maintenance personnel, and improved the reliability and observability of the system.
Smart Images

Figure CN120762734B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of application release control, and in particular to an application release control method, system, and server. Background Technology
[0002] With the rapid development of information technology, the pace of application updates is accelerating, making traditional single-point application update models insufficient to meet demands. Distributed application systems have gradually become the mainstream architecture. While distributed application systems offer greater scalability and fault tolerance, they also increase the complexity of application design and development, and make deployment and maintenance more difficult.
[0003] To address the aforementioned pain points, existing technologies utilize automation tools to achieve functions such as continuous integration and continuous deployment. However, the following issues still exist:
[0004] Inefficient operation and maintenance processes: Once configuration file modifications are involved, deep involvement of operation and maintenance personnel is required, which reduces the efficiency of development and deployment, fails to meet the needs of rapid iteration, and seriously affects development and deployment efficiency;
[0005] Lack of configuration management mechanism: Configuration files are placed on the server, and human intervention in modification is prone to errors. In addition, there are problems such as difficulty in managing configuration files, unclear correspondence with application versions, and inconvenience in rollback, which seriously affect the stability and maintainability of the system.
[0006] Team collaboration model defects: Information about the deployment location of microservices is often only known to specific operations and maintenance personnel, resulting in serious knowledge silos and making later changes difficult. Especially when team members change, the cost of knowledge transfer is high, affecting organizational efficiency and knowledge inheritance.
[0007] Insufficient reliability and observability: Traditional solutions lack effective recording and monitoring during deployment and operation, making it difficult to guarantee system reliability; at the same time, the lack of unified and comprehensive observation methods makes it impossible to discover potential problems in a timely manner and handle them effectively, which seriously restricts system performance optimization and problem troubleshooting. Summary of the Invention
[0008] In view of this, the purpose of this invention is to provide an application release control method, system, and server that can solve the problems of complex configuration file management, inconvenient release and rollback, high dependence on operation and maintenance personnel, and difficulty in handling configuration changes in continuous integration and continuous deployment during the containerized application release operation and maintenance management process. At the same time, it improves the reliability and observability of the application release process and realizes an automated, efficient, and convenient control process for containerized application operation and maintenance management.
[0009] In a first aspect, embodiments of the present invention provide an application release control method, the method comprising:
[0010] Identify the target server for the application project, and based on the interaction between the target server and the application project, determine the integration tools, deployment tools, version control tools, and operation and maintenance tools for the application project.
[0011] Use version control tools to obtain the application code and deployment information corresponding to the application project, and use the application code and deployment information to determine the deployment repository corresponding to the application project;
[0012] The environment configuration file of the application project is determined based on the environment information corresponding to the target server. After updating the environment configuration file based on the current version information of the application project, the updated environment configuration file is sent to the deployment repository using the integration tool.
[0013] After obtaining the environment configuration file from the deployment repository using the deployment tool, and then obtaining the container configuration information and application configuration information corresponding to the application project, the configuration script corresponding to the operation and maintenance tool is determined using the environment configuration information, container configuration information and application configuration information corresponding to the environment configuration file.
[0014] Use configuration scripts to control the operation and maintenance tools to deploy application projects to the containers corresponding to the target server.
[0015] Optionally, the steps of using version control tools to obtain the application code and deployment information corresponding to the application project, and using the application code and deployment information to determine the deployment repository corresponding to the application project, include:
[0016] Obtain the data request instructions sent by the integration tool to the version control tool, and determine the version information corresponding to the application project based on the data request instructions;
[0017] Use version control tools to obtain the application code and deployment information corresponding to the version information, and then send the application code and deployment information to the integration tool;
[0018] Use application code, deployment information, and version information to determine the deployment repository corresponding to the application project.
[0019] Optionally, the steps of determining the application project's environment configuration file based on the target server's environment information, updating the environment configuration file based on the application project's current version information, and then using an integration tool to send the updated environment configuration file to the deployment repository include:
[0020] The environment information is determined based on the target server's deployment environment and components, and the environment configuration file for the application project is determined using the environment information and the repository information corresponding to the deployment repository; the environment configuration file contains the historical version information of the application project.
[0021] After compiling and packaging the application code using an integration tool, an image file corresponding to the application project is obtained, and the image tag corresponding to the image file is acquired.
[0022] The current version information of the application project is determined based on the image tag, and when the current version information is inconsistent with the historical version information, the historical version information in the environment configuration file is updated to the current version information.
[0023] Use integration tools to send the updated environment configuration files and image files to the deployment repository.
[0024] Optionally, the steps of obtaining the environment configuration file from the deployment repository using the deployment tool, and then obtaining the container configuration information and application configuration information corresponding to the application project, and determining the configuration script corresponding to the operation and maintenance tool using the environment configuration information, container configuration information, and application configuration information corresponding to the environment configuration file, include:
[0025] Determine the deployment repository corresponding to the application project;
[0026] Use image tags to retrieve the environment configuration file corresponding to the application project from the deployment repository, and retrieve the environment configuration information corresponding to the environment configuration file;
[0027] Based on the environment information, determine the address configuration information, account configuration information, directory configuration information, task configuration information, container startup configuration information, and container orchestration configuration information corresponding to the target server;
[0028] The application configuration information is determined using address configuration information, account configuration information, directory configuration information, and task configuration information, and the container configuration information is determined using container startup configuration information and container orchestration configuration information.
[0029] Based on the environment configuration information, container configuration information, and application configuration information, determine the corresponding configuration scripts for the operation and maintenance tools under the application project.
[0030] Optionally, the steps for determining the deployment repository corresponding to the application project include:
[0031] Based on the image file and deployment information, determine the trigger command corresponding to the application project, and control the integration tool to send the trigger command to the deployment tool;
[0032] Once the deployment tool receives a trigger command, the current version information of the application project is determined using the trigger command obtained from the deployment tool.
[0033] Use the current version information to determine the deployment repository corresponding to the application project.
[0034] Optionally, the steps for using configuration scripts to control the deployment of application projects to the corresponding containers on the target server by the operation and maintenance tools include:
[0035] The target container and newly created container in the target server are determined based on environment configuration information, container configuration information, and application configuration information.
[0036] Based on the configuration script, obtain the first configuration script corresponding to the target container and the second configuration script corresponding to the newly created container;
[0037] The first configuration script is used to control the operation and maintenance tools to stop and delete the target container on the target server;
[0038] The second configuration script is used to control the operation and maintenance tools to create and start a new container on the target server, and to deploy the application project to the new container based on the deployment repository.
[0039] Optionally, after using configuration scripts to control the deployment of the application project to the container corresponding to the target server by the operation and maintenance tools, the method further includes:
[0040] The deployment result of the application project is determined based on the startup status of the container;
[0041] The operation and maintenance tools are used to send the release results back to the deployment tools, and the deployment tools are used to send the release results back to the integration tools.
[0042] Optionally, after using the operations and maintenance tools to send the release results back to the deployment tools, it also includes:
[0043] Retrieve the corresponding application release record unit from the deployment repository;
[0044] The deployment tool is used to send the release results back to the deployment repository, and the deployment repository is controlled to save the release results to the application release record unit.
[0045] Secondly, the present invention provides an application publishing control system, the system comprising:
[0046] The initialization unit is used to determine the target server corresponding to the application project, and to determine the integration tools, deployment tools, version control tools and operation and maintenance tools corresponding to the application project based on the interaction relationship between the target server and the application project.
[0047] The application acquisition unit is used to obtain the application code and deployment information corresponding to the application project using version control tools, and to determine the deployment repository corresponding to the application project using the application code and deployment information.
[0048] The application control unit is used to determine the environment configuration file of the application project based on the environment information corresponding to the target server, update the environment configuration file based on the current version information of the application project, and then use the integration tool to send the updated environment configuration file to the deployment repository.
[0049] The application configuration unit is used to obtain environment configuration files from the deployment repository using the deployment tool, and after obtaining the container configuration information and application configuration information corresponding to the application project, it uses the environment configuration information, container configuration information and application configuration information corresponding to the environment configuration file to determine the configuration script corresponding to the operation and maintenance tool.
[0050] The application deployment unit is used to control the operation and maintenance tools to deploy application projects to the containers corresponding to the target server using configuration scripts.
[0051] Thirdly, embodiments of the present invention also provide a server, including a processor and a memory, the memory storing computer-executable instructions that can be executed by the processor, the processor executing the computer-executable instructions to implement the steps of the application publishing control method provided in the first aspect.
[0052] Fourthly, embodiments of the present invention also provide a storage medium storing computer-executable instructions, which, when invoked and executed by a processor, cause the processor to implement the steps of the application release control method provided in the first aspect.
[0053] This invention provides an application release control method, system, and server. In the process of containerized application release and operation management, the method first determines the target server corresponding to the application project, and then determines the integration tool, deployment tool, version control tool, and operation and maintenance tool corresponding to the application project based on the interaction relationship between the target server and the application project. Next, the version control tool is used to obtain the application code and deployment information corresponding to the application project, and the deployment repository corresponding to the application project is determined using the application code and deployment information. Subsequently, the environment configuration file of the application project is determined based on the environment information corresponding to the target server, and after updating the environment configuration file based on the current version information of the application project, the integration tool sends the updated environment configuration file to the deployment repository. Then, the deployment tool retrieves the environment configuration file from the deployment repository, and obtains the container configuration information and application configuration information corresponding to the application project. The environment configuration information, container configuration information, and application configuration information corresponding to the environment configuration file are used to determine the configuration script corresponding to the operation and maintenance tool. Finally, the configuration script is used to control the operation and maintenance tool to deploy the application project to the container corresponding to the target server. This method can solve problems such as complex configuration file management, inconvenient release and rollback, high dependence on operation and maintenance personnel, and difficulty in handling configuration changes in continuous integration and continuous deployment during the release and maintenance management of containerized applications. At the same time, it improves the reliability and observability of the application release process and realizes the automation, efficiency and convenience of the control process for the operation and maintenance management of containerized applications.
[0054] Other features and advantages of the invention will be set forth in the description which follows, and will be apparent in part from the description, or may be learned by practicing the invention. The objects and other advantages of the invention are realized and obtained in accordance with the structures particularly pointed out in the description, claims and drawings.
[0055] To make the above-mentioned objects, features and advantages of the present invention more apparent and understandable, preferred embodiments are described below in detail with reference to the accompanying drawings. Attached Figure Description
[0056] To more clearly illustrate the specific embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the specific embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.
[0057] Figure 1 A flowchart of an application release control method provided in an embodiment of the present invention;
[0058] Figure 2 A flowchart of step S102 of an application release control method provided in an embodiment of the present invention;
[0059] Figure 3 A flowchart of step S103 of an application release control method provided in an embodiment of the present invention;
[0060] Figure 4 A flowchart of step S104 of an application release control method provided in an embodiment of the present invention;
[0061] Figure 5 A flowchart of step S401 of an application release control method provided in an embodiment of the present invention;
[0062] Figure 6 A flowchart of step S105 of an application release control method provided in an embodiment of the present invention;
[0063] Figure 7 A flowchart following step S105 of an application release control method provided in an embodiment of the present invention;
[0064] Figure 8 A flowchart illustrating how an application release control method, provided in an embodiment of the present invention, uses an operation and maintenance tool to call back the release result to the deployment tool.
[0065] Figure 9A flowchart illustrating an application release control method based on Ansible and GitOps provided in this embodiment of the invention;
[0066] Figure 10 A flowchart illustrating an application release control method based on Ansible and GitOps provided in this embodiment of the invention;
[0067] Figure 11 Signaling diagram of an application release control method based on Ansible and GitOps provided in an embodiment of the present invention;
[0068] Figure 12 The following is an execution flowchart of a continuous integration and continuous deployment method for application release control provided in an embodiment of the present invention;
[0069] Figure 13 This is a schematic diagram of the structure of an application publishing control system provided in an embodiment of the present invention;
[0070] Figure 14 This is a schematic diagram of the structure of a server provided in an embodiment of the present invention.
[0071] icon:
[0072] 1310 - Initialization Unit; 1320 - Application Acquisition Unit; 1330 - Application Control Unit; 1340 - Application Configuration Unit; 1350 - Application Deployment Unit;
[0073] 101 - Processor; 102 - Memory; 103 - Bus; 104 - Communication interface. Detailed Implementation
[0074] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the present invention will be clearly and completely described below in conjunction with the embodiments. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0075] To facilitate understanding of this embodiment, a detailed description of an application publishing control method disclosed in this embodiment of the invention will be provided first, such as... Figure 1 As shown, the method includes:
[0076] Step S101: Determine the target server corresponding to the application project, and determine the integration tool, deployment tool, version control tool, and operation and maintenance tool corresponding to the application project based on the interaction relationship between the target server and the application project.
[0077] First, it's crucial to identify the target server where the application will be deployed; this forms the foundation of the entire deployment process. After determining the target server, based on the interaction characteristics between that server and the application (such as data transmission methods and compatibility requirements), a suitable toolset is further selected and determined. This includes integration tools for code integration, deployment tools for program deployment, version control tools for managing code versions, and maintenance tools for subsequent operations. The selection of these tools must ensure they match the target server environment and the characteristics of the application, laying the foundation for subsequent processes.
[0078] Step S102: Use version control tools to obtain the application code and deployment information corresponding to the application project, and use the application code and deployment information to determine the deployment repository corresponding to the application project.
[0079] This step uses established version control tools to extract the complete application code and related deployment information (such as deployment paths and dependencies). By analyzing the application code structure and deployment information, a dedicated deployment repository is built or designated to store the resources required for deployment. This repository will centrally manage all types of files and configurations involved in subsequent deployments, ensuring the orderliness and traceability of deployment resources.
[0080] Step S103: Determine the environment configuration file of the application project based on the environment information corresponding to the target server, update the environment configuration file based on the current version information of the application project, and then use the integration tool to send the updated environment configuration file to the deployment repository.
[0081] This step generates or obtains the environment configuration file corresponding to the application project based on the specific environment information of the target server (such as operating system version, hardware configuration, network settings, etc.). Combined with the current version information of the application project (such as version number, update content, etc.), the environment configuration file is updated accordingly to adapt to the current version's runtime requirements. After the update is completed, the modified environment configuration file is transferred to the deployment repository determined in step S102 using an integration tool, achieving centralized management and synchronization of the configuration file.
[0082] Step S104: Use the deployment tool to obtain the environment configuration file from the deployment repository, and after obtaining the container configuration information and application configuration information corresponding to the application project, use the environment configuration information, container configuration information and application configuration information corresponding to the environment configuration file to determine the configuration script corresponding to the operation and maintenance tool.
[0083] This step utilizes deployment tools to retrieve updated environment configuration files from the deployment repository, thereby obtaining environment configuration information. Simultaneously, it collects container configuration information (such as container type, resource allocation, and network mode) corresponding to the application project, as well as the application's own configuration information (such as database connection parameters and service ports). These three types of information are then integrated and analyzed to write or generate configuration scripts that can be recognized and executed by the operations and maintenance tools. These scripts contain all the necessary operation instructions and parameter settings required during the deployment process.
[0084] Step S105: Use configuration scripts to control the operation and maintenance tools to deploy the application project to the container corresponding to the target server.
[0085] Finally, using the configuration script generated in step S104, the operation and maintenance tools are driven to deploy the relevant resources and program files of the application project to the corresponding container on the target server according to the instructions in the script, thus completing the application release process. Containerized deployment ensures the consistency and isolation of the application runtime environment, improving the stability and efficiency of the release.
[0086] Optionally, step S102 involves using a version control tool to obtain the application code and deployment information corresponding to the application project, and using the application code and deployment information to determine the deployment repository corresponding to the application project. Figure 2 As shown, it includes:
[0087] Step S201: Obtain the data request instruction sent by the integration tool to the version control tool, and determine the version information corresponding to the application project based on the data request instruction.
[0088] First, this step captures the data request commands sent by the integration tool to the version control tool. These commands typically contain a unique identifier for the application project (such as project ID or name), the required resource types (code / configuration files, etc.), and filtering criteria. By parsing this information, the corresponding version information for the application project can be accurately located, including the target version number, branch name (such as development branch, test branch, production branch), and tag identifiers. This step ensures that subsequent operations can accurately identify the required project version, avoiding version confusion.
[0089] Step S202: Use version control tools to obtain the application code and deployment information corresponding to the version information, and send the application code and deployment information to the integration tool.
[0090] Then, based on the version information determined in step S201, the complete resources corresponding to that version are extracted from its code repository using version control tools (such as Git or SVN). These resources include: application code (source code, dependent libraries, static resources (images, stylesheets, etc.) and build configuration files); and deployment information (historical deployment records, environment dependency lists (such as operating system version and database type), deployment script templates, etc.). After acquisition, the version control tool packages and transmits these resources to the integration tool through a preset interface, realizing the flow of resources from the version management end to the integration stage.
[0091] Step S203: Use the application code, deployment information, and version information to determine the deployment repository corresponding to the application project.
[0092] After receiving resources, the integration tool determines the deployment repository based on three aspects of information. First, it matches the repository's storage format to the application code's project structure (e.g., modular division, file directory hierarchy). Second, it references the historical repository paths and permission configuration rules (e.g., read / write permissions, access keys) recorded in the deployment information. Third, it considers the characteristics of the version information (e.g., whether it's a production version, whether isolated storage is required). The final deployment repository must meet resource classification and storage specifications, support version traceability, and be compatible with the access protocols of subsequent deployment tools, providing a reliable resource base for subsequent configuration file synchronization and deployment operations.
[0093] Optionally, step S103 involves determining the application project's environment configuration file based on the target server's environment information, updating the environment configuration file based on the application project's current version information, and then using an integration tool to send the updated environment configuration file to the deployment repository. Figure 3 As shown, it includes:
[0094] Step S301: Determine the environment information based on the target server's deployment environment and components, and use the environment information and the repository information corresponding to the deployment repository to determine the environment configuration file corresponding to the application project; wherein, the environment configuration file contains the historical version information corresponding to the application project.
[0095] By deeply analyzing the characteristics of the target server's deployment environment (such as operating system type and version, hardware resource configuration, network environment parameters, etc.) and installed component information (such as database type, middleware version, dependent services, etc.), this information is integrated to form complete environment information. Simultaneously, repository information, including storage path, access protocol, and permission configuration, is extracted. Combining the environment information and repository information, a unique environment configuration file for the application project is generated or matched. This file, in addition to containing runtime parameters adapted to the target server, also records historical version information of the application project's previous deployments, providing a basis for version tracking and updates.
[0096] Step S302: After compiling and packaging the application code using the integration tool, obtain the image file corresponding to the application project, and obtain the image tag corresponding to the image file.
[0097] This step utilizes integrated tools to initiate an automated processing flow for the application code. First, it performs syntax checks and unit tests on the source code. Once passed, it compiles and converts the high-level language code into executable code. Then, it generates an image file corresponding to the application project according to preset packaging rules (such as compression format and directory structure). After the image file is generated, a unique image tag is automatically created for it. This tag typically contains information such as version number, build time, and commit identifier, used to accurately distinguish different versions of the image.
[0098] Step S303: Determine the current version information of the application project based on the image tag, and update the historical version information in the environment configuration file to the current version information when the current version information is inconsistent with the historical version information.
[0099] This step parses the current version information of the application project (such as major version number, minor version number, and revision number) from the image tag and compares it with the historical version information recorded in the environment configuration file. When an inconsistency is detected (i.e., a version update exists), the historical version information in the environment configuration file is replaced with the current version information. At the same time, other version-related parameters in the configuration file (such as dependency version compatibility settings) may be updated to ensure that the configuration file matches the current application version.
[0100] Step S304: Use the integration tool to send the updated environment configuration file and image file to the deployment repository.
[0101] After updating the environment configuration file, the control integration tool uploads the updated environment configuration file and the generated image file to the deployment repository using a transport protocol compatible with the deployment repository (such as HTTP, FTP, or a dedicated API). Data verification is performed during the upload process to ensure file integrity. Simultaneously, the deployment repository categorizes and stores files according to file type and version information and updates the repository index so that the deployment tool can quickly locate and retrieve these resources later.
[0102] Optionally, step S104 involves using a deployment tool to retrieve an environment configuration file from a deployment repository, and then using the environment configuration information, container configuration information, and application configuration information corresponding to the application project to determine the configuration script corresponding to the operation and maintenance tool. Figure 4 As shown, it includes:
[0103] Step S401: Determine the deployment repository corresponding to the application project.
[0104] First, identify the deployment repository location for the current application project. This repository is a dedicated storage area where deployment resources such as environment configuration files and image files have been identified and stored in previous steps. When identifying the repository, its legitimacy and availability must be verified, including checking the repository's access permissions, the validity of the storage path, and its compatibility with deployment tools, to ensure that the required resources can be successfully obtained from it later.
[0105] Step S402: Use the image tag to obtain the environment configuration file corresponding to the application project from the deployment repository, and obtain the environment configuration information corresponding to the environment configuration file.
[0106] Based on the unique image tag (containing version identifier, build information, etc.) corresponding to the application project image file, the deployment tool accurately extracts the environment configuration file associated with that image tag from the deployment repository through the repository's indexing mechanism or query interface, and then obtains the environment configuration information corresponding to the environment configuration file. This information covers various parameters adapted to the target server environment, such as runtime dependencies, network port mapping rules, environment variable settings, etc., and serves as the basis for subsequent configuration.
[0107] Step S403: Determine the address configuration information, account configuration information, directory configuration information, task configuration information, container startup configuration information, and container orchestration configuration information corresponding to the target server based on the environment information.
[0108] This step involves in-depth analysis of the target server's environmental information (such as hardware configuration, operating system, network architecture, etc.) and transforming it into specific configuration items. These include: address configuration information (server IP address, port number, domain name, and other network identifiers); account configuration information (username, password, or key for logging into the server, and other authentication data); directory configuration information (application installation path, data storage directory, log storage path, etc. on the server); task configuration information (execution steps, scheduling rules, timeout settings, etc. during deployment); container startup configuration information (container memory allocation, CPU limits, startup commands, etc.); and container orchestration configuration information (dependencies between multiple containers, network communication rules, service discovery mechanisms, etc., applicable to multi-container deployment scenarios).
[0109] Step S404: Determine the application configuration information using address configuration information, account configuration information, directory configuration information, and task configuration information, and determine the container configuration information using container startup configuration information and container orchestration configuration information.
[0110] This step categorizes and integrates the configuration items extracted in step S403, combining address configuration, account configuration, directory configuration, and task configuration to form application configuration information, clarifying the application's deployment location, access method, and execution flow on the server. Simultaneously, container startup configuration and container orchestration configuration are integrated into container configuration information, defining container runtime parameters and multi-container collaboration rules to ensure containers can start and work collaboratively as expected.
[0111] Step S405: Determine the configuration script for the operation and maintenance tool under the application project based on the environment configuration information, container configuration information, and application configuration information.
[0112] This step comprehensively integrates environment configuration information (environment adaptation parameters from the deployment repository), container configuration information (container running rules), and application configuration information (application deployment details), and generates a configuration script for the current application project according to the syntax specifications that the operation and maintenance tools can recognize (such as Shell scripts, YAML configurations, Python scripts, etc.). This script contains instructions for the entire process from server login, directory creation, container startup to application deployment, ensuring that the operation and maintenance tools can automatically complete the deployment operation according to the preset logic, while taking into account environment adaptability and version compatibility.
[0113] Optionally, step S401, which determines the deployment repository corresponding to the application project, is as follows: Figure 5 As shown, it includes:
[0114] Step S501: Determine the trigger command corresponding to the application project based on the image file and deployment information, and control the integration tool to send the trigger command to the deployment tool.
[0115] During the process of determining the deployment repository, a corresponding trigger command is automatically generated based on the application project's generated image file (containing code, dependencies, and runtime environment packages) and deployment information (such as deployment strategies and historical deployment records). This command contains key information such as project identifier, image characteristics, and deployment requirements, essentially serving as a "signal" to initiate the deployment process. Subsequently, the control integration tool sends this trigger command to the deployment tool, completing the transmission of the deployment process's start signal and ensuring that the deployment tool is aware of the specific tasks that need to be processed.
[0116] Step S502: When the deployment tool receives a trigger command, the current version information of the application project is determined using the trigger command obtained from the deployment tool.
[0117] After receiving the trigger command, the deployment tool parses the command content to extract core information related to the application project, especially the current version information. This version information usually corresponds to the tags of the image file (such as version number, build timestamp, etc.). By parsing the trigger command, the deployment tool can accurately locate the version of the application project to be deployed, providing a clear version basis for subsequent matching of the deployment repository.
[0118] Step S503: Use the current version information to determine the deployment repository corresponding to the application project.
[0119] After obtaining the current version information, and in accordance with version management rules (such as different versions corresponding to different repository partitions, and separate storage for official and test versions), the deployment repository matching the current version is determined from a pre-defined list of repositories. For example, a development version might correspond to a deployment repository for the test environment, while a release version might correspond to a deployment repository for the production environment. This step ensures that the deployment tool can accurately access the repository storing the resources required by this version of the application (such as environment configuration files, image files, etc.), laying the foundation for subsequently obtaining deployment resources.
[0120] Optionally, step S105, which uses configuration scripts to control the operation and maintenance tools to deploy the application project to the container corresponding to the target server, is described. Figure 6 As shown, it includes:
[0121] Step S601: Determine the target container and newly created container in the target server based on environment configuration information, container configuration information and application configuration information.
[0122] This step involves comprehensively analyzing environment configuration information (such as server resource limitations and network environment), container configuration information (such as container specifications and orchestration rules), and application configuration information (such as deployment path and version requirements) to identify the target container (i.e., the currently running old version application container) and the newly created container (i.e., the container used to deploy the new version application) on the target server. This step requires accurately locating the identifier of the target container (such as container ID and name) and determining the resource allocation (such as CPU and memory quotas) and network configuration (such as port mapping and network mode) of the new container to ensure that the environment parameters of the old and new containers match.
[0123] Step S602: Obtain the first configuration script corresponding to the target container and the second configuration script corresponding to the newly created container based on the configuration script.
[0124] This step, based on the pre-defined logic in the configuration scripts and considering the characteristics of the target and newly created containers, breaks down the process into targeted operation scripts. Specifically, the first configuration script is dedicated to handling the stopping and deletion of the target container, including container stop commands, process cleanup commands, and resource release rules; the second configuration script is used for the creation and startup of the new container, covering container initialization parameters, image pull paths, startup command sequences, and health check mechanisms. These two types of scripts operate independently yet collaboratively, ensuring the orderly nature of the deployment process.
[0125] Step S603: Use the first configuration script to control the operation and maintenance tools to stop and delete the target container on the target server.
[0126] The operations and maintenance tool executes the first configuration script, which first sends a graceful stop command to the target container to ensure that the application inside the container completes data persistence, connection closure, and other cleanup operations to avoid data loss or service interruption. If the container is unresponsive, the script will trigger a forced stop mechanism. After stopping, a delete command is executed to remove the target container, releasing the server resources it occupies (such as ports and storage volumes), making room for the newly created container, and cleaning up container-related temporary files and logs.
[0127] Step S604: Use the second configuration script to control the operation and maintenance tools to create and start the new container on the target server, and deploy the application project to the new container based on the deployment repository.
[0128] The operations and maintenance tool calls the second configuration script to create a new container on the target server based on the container configuration information, including allocating preset hardware resources, configuring network connections, and mounting necessary storage volumes. After the container is created, the application project's image file and supporting resources are pulled from the deployment repository, loaded into the new container, and the startup command is executed. During startup, the script automatically performs health checks (such as checking whether the service port is listening and whether the basic interfaces are available). After confirming that the application is running normally, the deployment of the new version of the application in the new container is completed. The entire process achieves seamless application version switching.
[0129] Optionally, after step S105, where the application project is deployed to the container corresponding to the target server using configuration scripts to control the operation and maintenance tools, as follows: Figure 7 As shown, the method also includes:
[0130] Step S701: Determine the deployment result of the application project based on the container's startup status;
[0131] Step S702: Use the operation and maintenance tool to send the release result back to the deployment tool, and use the deployment tool to send the release result back to the integration tool.
[0132] After the application project is deployed to a newly created container, the container's startup status and running status are continuously monitored to determine the deployment result. Specifically, status data is collected through the container's health check mechanism (such as checking whether the service port is listening normally, whether the core business interface returns the expected response, and whether there are fatal errors in the logs). If the container starts successfully and the health check passes, and the application can respond to requests normally, the deployment result is determined to be "successful"; if the container startup times out, the health check fails (such as the service being inaccessible), or a critical error occurs during startup (such as missing dependencies or configuration conflicts), the deployment result is determined to be "failed," and the specific reasons for the failure are recorded (such as error log fragments and details of failed checks) to provide a basis for subsequent troubleshooting.
[0133] After confirming the release result, the operations and maintenance tools synchronize the result information (including release status, project identifier, version number, completion time, failure reason, etc.) to the deployment tools through a preset callback mechanism (such as API interface calls, message queue pushes, etc.). Upon receiving the result, the deployment tools verify the information (such as confirming project and version compatibility) and supplement their own recorded deployment process data (such as deployment duration, resource consumption, etc.). They then transmit the integrated release result to the integration tools through the same callback method. Finally, upon receiving the result, the integration tools update the project release status record, allowing the development team or relevant personnel to view the release progress through a visual interface, and providing decision-making references for subsequent version iterations or rollback operations. If information transmission fails during the callback process, each tool will trigger a retry mechanism to ensure that the result information is reliably delivered to the final node.
[0134] Optionally, the deployment results can be redirected back to the deployment tool using the operations and maintenance tools, such as... Figure 8 As shown, it also includes:
[0135] Step S801: Obtain the corresponding application release record unit in the deployment repository;
[0136] Step S802: Use the deployment tool to send the release result back to the deployment repository, and control the deployment repository to save the release result to the application release record unit.
[0137] First, locate the application release record unit in the deployment repository, which stores historical application release information. This unit is a pre-defined structured storage module within the deployment repository (which can be a specific directory, database table, or log file) specifically used to record key information for each application release, such as release version, time, status, associated containers, and operator. When retrieving this unit, it is necessary to verify the validity of its storage path, access permissions, and the integrity of its data structure (e.g., whether fields are complete and whether the format is standardized) to ensure that subsequent release results can be correctly stored and retrieved.
[0138] Subsequently, after receiving the release result from the operations tool's callback, the deployment tool synchronizes complete release result information (including release status, corresponding version number, deployment completion time, involved server and container identifiers, and error details in case of failure) to the deployment repository via a data interaction protocol adapted to the deployment repository (such as REST API, file write commands, etc.). Simultaneously, the deployment repository is controlled to structure this information into the application release record unit determined in step S801 according to preset recording rules. For example, adding record entries sorted by timestamp, or updating the release status field of the corresponding version. After writing is complete, the repository automatically performs data validation (such as integrity validation and format validation) to ensure the accuracy of the records. These stored release records can be used for subsequent version tracking, release auditing, problem troubleshooting, and optimization of automated deployment strategies.
[0139] In specific scenarios, the above application release control methods can be implemented using a combination of Ansible and GitOps. Specifically, version control tools can be Subversion or Git, used to store project source code and deployment information. Integration and deployment tools are specifically CI and CD tools, such as Jenkins or GitLab-CI, which mainly perform various project tasks, including source code compilation and packaging, code quality checks, and application deployment. Ansible can be used as the operations tool to execute the project's deployment scripts, specifically installed on the running nodes of the CI and CD tools. In addition, related deployment scripts are included, such as the Ansible Playbook script, whose main function is to copy deployment files to a specified server and perform related start-up and stop-service operations. This script contains various configuration files, such as an env configuration file containing image tags, i.e., the CI pipeline modifies component version information. Specifically, the Ansible Playbook script may contain:
[0140] Inventory configuration file: Configured according to different deployment components, including information such as server IP, login account, and deployment directory;
[0141] Task configuration files: These are Ansible tasks, such as copying configuration files, starting containers, etc.
[0142] Application deployment configuration files: organized by different deployment environments and components, including application configuration files, container startup Docker-Compose files, and env configuration files. The env configuration file contains image tags, which are version information of components modified in the CI pipeline.
[0143] Based on the tools mentioned above, such as Figure 9The diagram illustrates a workflow framework for an application release control method based on Ansible and GitOps. The version control tool at this stage includes the application source code repository and the project Deploy repository. After compiling and building the code using the CI pipeline, the Deploy repository is launched, and then the relevant environment is modified and committed to the Deploy repository. The project Deploy repository executes Ansible Playbook tasks in the CD pipeline, thereby deploying the application to the target server.
[0144] The GitOps mentioned above is a methodology for operations and continuous delivery based on Git. Specifically, it uses Git as the sole trusted source for infrastructure and applications, and achieves observability, auditability, and self-healing of the system through declarative configuration and automated processes. It can be seen that the above method fully integrates CI pipelines and CD pipelines by utilizing the GitOps concept.
[0145] Specifically, such as Figure 10 As shown, the CI pipeline primarily targets project repositories, such as front-end or back-end repositories during front-end or back-end development. It mainly handles code integration and artifact building, including source code compilation and packaging, and code quality checks. The CD pipeline primarily targets the project Deploy repository, responsible for artifact deployment and release. Upon receiving a CI pipeline trigger command, the Ansible Playbook script is executed to synchronize the components to be released to the target server. The combination of the CI and CD pipelines leverages GitOps principles by adding a release environment step to the CI pipeline. This involves updating the artifact version information (such as image tags) built by the CI pipeline to the corresponding component version information in the Deploy repository, triggering the CD pipeline execution.
[0146] Detailed execution process as follows Figure 11 The signaling diagram shown is for an application release control method based on Ansible and GitOps. The main steps are as follows:
[0147] Step 1: The CI production line completes the modification of the product version information.
[0148] This step involves three operations to synchronize artifact version information:
[0149] 1. Pull the Deploy repository code: Use Git commands to pull the Deploy repository of the corresponding project to your local machine;
[0150] 2. Based on the environment to be published and the current repository information, locate the corresponding .env file and use shell commands to synchronize the artifact version information (such as image tag) to the .env file;
[0151] 3. Use Git commands to commit the modified Deploy content to the version control tool.
[0152] Step 2: The CI pipeline completes the triggering of the CD pipeline.
[0153] After completing step one, the CD pipeline of the Deploy repository is triggered to execute via an interface call.
[0154] Step 3: CD pipeline execution.
[0155] Upon receiving the execution command, the CD pipeline executes the Ansible Playbook script based on the input parameters, such as the environment and components to be deployed. This process involves deleting the relevant containers, rebuilding them, and starting a new container, thereby completing the application deployment.
[0156] For reference, see the CI and CD execution flow. Figure 12 The specifics will not be elaborated further.
[0157] The above implementation leverages GitOps principles and the idempotency of Ansible scripts to achieve significant improvements in operational efficiency, simplified rollback and change management processes, enhanced collaboration between development and operations, and improved system reliability and observability.
[0158] As can be seen from the application release control methods described in the above embodiments, the seamless integration of GitOps and CI / CD pipelines, along with Ansible's automated script execution, greatly reduces the workload of manual operations by maintenance personnel and significantly improves release efficiency. At the same time, Ansible's idempotency ensures the stability of the release process and reduces the risk of errors caused by repetitive operations.
[0159] In addition, this method simplifies the rollback and change management process. All deployment and configuration information is centrally stored in the Deploy repository, with detailed records for each change. When a rollback is needed, the operation can be completed quickly and accurately, and it is convenient to trace the configuration change history, which facilitates problem investigation and management.
[0160] This method enhances collaboration between development and operations. Key information, such as microservice deployment details, is centrally stored in a shared Deploy repository, easily accessible to all team members. This breaks down information silos and facilitates subsequent change management and team collaboration. Furthermore, developers can independently handle configuration changes during the CI / CD process, improving overall development and deployment efficiency.
[0161] This approach also improves reliability and observability. By leveraging GitOps’ declarative configuration and automated processes, it enables observability, auditability, and self-healing during application deployment. Combined with Ansible’s automated operation and maintenance capabilities, it ensures reliability during deployment and operation.
[0162] Corresponding to the above-described application publishing control method embodiments, this invention also provides an application publishing control system, such as... Figure 13 As shown, the system includes:
[0163] The initialization unit 1310 is used to determine the target server corresponding to the application project, and to determine the integration tool, deployment tool, version control tool and operation and maintenance tool corresponding to the application project based on the interaction relationship between the target server and the application project.
[0164] Application acquisition unit 1320 is used to acquire the application code and deployment information corresponding to the application project using version control tools, and to determine the deployment repository corresponding to the application project using the application code and deployment information.
[0165] The application control unit 1330 is used to determine the environment configuration file of the application project based on the environment information corresponding to the target server, and after updating the environment configuration file based on the current version information of the application project, use the integration tool to send the updated environment configuration file to the deployment repository.
[0166] Application configuration unit 1340 is used to obtain environment configuration files from the deployment repository using the deployment tool, and after obtaining the container configuration information and application configuration information corresponding to the application project, it uses the environment configuration information, container configuration information and application configuration information corresponding to the environment configuration file to determine the configuration script corresponding to the operation and maintenance tool.
[0167] Application deployment unit 1350 is used to deploy application projects to the container corresponding to the target server using configuration scripts to control operation and maintenance tools.
[0168] As can be seen from the above application release control system, the system can solve the problems of complex configuration file management, inconvenient release and rollback, high dependence on operation and maintenance personnel, and difficulty in handling configuration changes in continuous integration and continuous deployment during the containerized application release operation and maintenance management process. At the same time, it improves the reliability and observability of the application release process and realizes the automation, efficiency and convenience of the containerized application operation and maintenance management process.
[0169] The application publishing control system provided in this embodiment of the invention has the same implementation principle and technical effects as the aforementioned application publishing control method embodiment. For the sake of brevity, any parts not mentioned in the system embodiment can be referred to the corresponding content in the aforementioned application publishing control method embodiment.
[0170] This embodiment also provides a server, the structural diagram of which is shown below. Figure 14 As shown, the device includes a processor 101 and a memory 102; wherein the memory 102 is used to store one or more computer instructions, which are executed by the processor to implement the steps of the application release control method described above.
[0171] Figure 14 The server shown also includes a bus 103 and a communication interface 104. The processor 101, the communication interface 104, and the memory 102 are connected via the bus 103.
[0172] The memory 102 may include high-speed random access memory (RAM) and may also include non-volatile memory, such as at least one disk storage device. The bus 103 may be an ISA bus, PCI bus, or EISA bus, etc. The bus can be divided into address bus, data bus, control bus, etc. For ease of representation, Figure 14 The symbol is represented by a single double-headed arrow, but this does not mean that there is only one bus or one type of bus.
[0173] The communication interface 104 is used to connect to at least one user terminal and other network units through a network interface, and to send encapsulated IPv4 packets or IPv4 packets to the user terminal through the network interface.
[0174] Processor 101 may be an integrated circuit chip with signal processing capabilities. In implementation, each step of the above method can be completed by the integrated logic circuitry in the hardware of processor 101 or by instructions in software form. The processor 101 can be a general-purpose processor, including a Central Processing Unit (CPU), a Network Processor (NP), etc.; it can also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field-Programmable Gate Array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this disclosure. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this disclosure can be directly manifested as execution by a hardware decoding processor, or execution by a combination of hardware and software modules in the decoding processor. The software module can reside in a mature storage medium in the art, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, or registers. This storage medium is located in memory 102. The processor 101 reads the information in memory 102 and, in conjunction with its hardware, completes the steps of the method described in the foregoing embodiments.
[0175] This invention also provides a storage medium storing a computer program, which, when run by a processor, executes the steps of the application release control method described in the foregoing embodiments.
[0176] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, devices, and methods can be implemented in other ways. The system embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. Furthermore, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Additionally, the coupling or direct coupling or communication connection shown or discussed may be through some communication interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.
[0177] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0178] In addition, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0179] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a processor-executable, non-volatile, computer-readable storage medium. Based on this understanding, the technical solution of this invention, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0180] Finally, it should be noted that the above-described embodiments are merely specific implementations of the present invention, used to illustrate the technical solutions of the present invention, and not to limit it. The scope of protection of the present invention is not limited thereto. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that any person skilled in the art can still modify or easily conceive of changes to the technical solutions described in the foregoing embodiments within the technical scope disclosed in the present invention, or make equivalent substitutions for some of the technical features; and these modifications, changes, or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should all be covered within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.
Claims
1. An application release control method characterized by comprising: The method comprises: determining a target server corresponding to an application project, and determining an integration tool, a deployment tool, a version control tool and an operation and maintenance tool corresponding to the application project based on an interaction relationship between the target server and the application project; acquiring application code and deployment information corresponding to the application project by using the version control tool, and determining a deployment repository corresponding to the application project by using the application code and the deployment information; determining an environment configuration file of the application project according to environment information corresponding to the target server, and sending the updated environment configuration file to the deployment repository by using the integration tool after updating the environment configuration file based on current version information of the application project; acquiring the environment configuration file from the deployment repository by using the deployment tool, and determining a configuration script corresponding to the operation and maintenance tool by using environment configuration information corresponding to the environment configuration file, container configuration information and application configuration information corresponding to the application project after acquiring the container configuration information and the application configuration information; controlling the operation and maintenance tool to deploy the application project into a container corresponding to the target server by using the configuration script; the step of controlling the operation and maintenance tool to deploy the application project into the container corresponding to the target server by using the configuration script comprises: determining a target container and a new container in the target server based on the environment configuration information, the container configuration information and the application configuration information; acquiring a first configuration script corresponding to the target container and a second configuration script corresponding to the new container based on the configuration script; controlling the operation and maintenance tool to stop and delete the target container in the target server by using the first configuration script; controlling the operation and maintenance tool to establish and start the new container in the target server by using the second configuration script, and deploying the application project into the new container based on the deployment repository.
2. The application release control method according to claim 1, wherein the step of acquiring the application code and the deployment information corresponding to the application project by using the version control tool, and determining the deployment repository corresponding to the application project by using the application code and the deployment information comprises: acquiring a data request instruction issued by the integration tool to the version control tool, and determining version information corresponding to the application project according to the data request instruction; acquiring the application code and the deployment information corresponding to the version information by using the version control tool, and sending the application code and the deployment information to the integration tool; determining the deployment repository corresponding to the application project by using the application code, the deployment information and the version information.
3. The application release control method of claim 1, wherein, the step of determining the environment configuration file of the application project according to the environment information corresponding to the target server, and sending the updated environment configuration file to the deployment repository by using the integration tool after updating the environment configuration file based on the current version information of the application project comprises: Determine the environment information according to the to-be-deployed environment and components corresponding to the target server, and determine the environment configuration file corresponding to the application project by using the environment information and the warehouse information corresponding to the deployment warehouse; wherein the environment configuration file contains historical version information corresponding to the application project; Obtain the image file corresponding to the application project by compiling and packaging the application code by using the integration tool, and obtain the image tag corresponding to the image file; Determine the current version information of the application project based on the image tag, and update the historical version information in the environment configuration file to the current version information when the current version information is inconsistent with the historical version information; Send the updated environment configuration file and the image file to the deployment warehouse by using the integration tool.
4. The application release control method according to claim 3, characterized by, After obtaining the environment configuration file from the deployment warehouse by using the deployment tool, and obtaining the container configuration information and application configuration information corresponding to the application project, determine the configuration script corresponding to the operation and maintenance tool by using the environment configuration information corresponding to the environment configuration file, the container configuration information, and the application configuration information, including: Determine the deployment warehouse corresponding to the application project; Obtain the environment configuration file corresponding to the application project from the deployment warehouse by using the image tag, and obtain the environment configuration information corresponding to the environment configuration file; Determine the address configuration information, account configuration information, directory configuration information, task configuration information, container startup configuration information, and container orchestration configuration information corresponding to the target server according to the environment information; Determine the application configuration information by using the address configuration information, the account configuration information, the directory configuration information, and the task configuration information, and determine the container configuration information by using the container startup configuration information and the container orchestration configuration information; Determine the configuration script corresponding to the operation and maintenance tool under the application project according to the environment configuration information, the container configuration information, and the application configuration information.
5. The application release control method according to claim 4, wherein The step of determining the deployment warehouse corresponding to the application project includes: Determine the trigger instruction corresponding to the application project based on the image file and the deployment information, and control the integration tool to send the trigger instruction to the deployment tool; After detecting that the deployment tool receives the trigger instruction, determine the current version information corresponding to the application project by using the trigger instruction obtained in the deployment tool; Determine the deployment warehouse corresponding to the application project by using the current version information.
6. The application release control method of claim 1, wherein, After the step of controlling the operation and maintenance tool to deploy the application project to the container corresponding to the target server by using the configuration script, the method further includes: Determine the release result of the application project according to the startup state of the container; Call the release result to the deployment tool by using the operation and maintenance tool, and call the release result to the integration tool by using the deployment tool.
7. The application release control method according to claim 6, wherein After calling the release result to the deployment tool by using the operation and maintenance tool, further includes: acquiring an application publishing record unit corresponding to the deployment warehouse; utilizing the deployment tool to call back the publishing result to the deployment warehouse, and controlling the deployment warehouse to save the publishing result to the application publishing record unit.
8. An application release control system characterized by comprising: The system comprises: an initialization unit configured to determine a target server corresponding to an application project, and determine an integration tool, a deployment tool, a version control tool and an operation and maintenance tool corresponding to the application project based on an interaction relationship between the target server and the application project; an application acquisition unit configured to acquire application code and deployment information corresponding to the application project by utilizing the version control tool, and determine a deployment warehouse corresponding to the application project by utilizing the application code and the deployment information; an application control unit configured to determine an environment configuration file of the application project according to environment information corresponding to the target server, and send the updated environment configuration file to the deployment warehouse by utilizing the integration tool after updating the environment configuration file based on current version information of the application project; an application configuration unit configured to acquire the environment configuration file from the deployment warehouse by utilizing the deployment tool, and determine a configuration script corresponding to the operation and maintenance tool by utilizing environment configuration information corresponding to the environment configuration file, container configuration information and application configuration information corresponding to the application project after acquiring the container configuration information and the application configuration information; an application deployment unit configured to control the operation and maintenance tool to deploy the application project to a container corresponding to the target server by utilizing the configuration script; the application deployment unit is further configured to determine a target container and a new container in the target server based on the environment configuration information, the container configuration information and the application configuration information, acquire a first configuration script corresponding to the target container and a second configuration script corresponding to the new container based on the configuration script, control the operation and maintenance tool to stop and delete the target container in the target server by utilizing the first configuration script, control the operation and maintenance tool to establish and start the new container in the target server by utilizing the second configuration script, and deploy the application project to the new container in the target server based on the deployment warehouse.
9. A server, characterized by A device comprises a processor and a memory, the memory stores computer executable instructions capable of being executed by the processor, and the processor executes the computer executable instructions to implement the steps of the application publishing control method in any one of claims 1 to 7.
Citation Information
Patent Citations
Application deployment method and device, electronic equipment and storage medium
CN119440558A
Computer-automated software release and deployment architecture
US11157253B1