Method for deploying FreeSwitch service in containerization mode

Through containerized deployment of FreeSwitch services, the cumbersome and compatibility issues of FreeSwitch deployment on physical or virtual machines are solved, rapid deployment and environmental consistency are achieved, operation and maintenance difficulties and configuration risks are reduced, and system stability and management efficiency are improved.

CN119917123APending Publication Date: 2025-05-02CHEZHI HULIAN BEIJING SCI & TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202510089737.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-20
Publication Date
2025-05-02

AI Technical Summary

Technical Problem

In the prior art, FreeSwitch services are cumbersome to deploy on physical or virtual machines and are prone to compatibility problems, resulting in difficulty in operation and maintenance.

Method used

The containerized deployment method is adopted to ensure the network configuration by pulling images, installing dependencies, compiling source code, modifying configuration, cleaning images, saving and uploading images to the enterprise Harbor system, configuring private cloud process lines and starting containers to ensure the normal operation of the FreeSwitch service.

Benefits of technology

It achieves rapid deployment and environmental consistency, reduces the operation and maintenance work burden, reduces the risk of configuration inconsistency caused by human errors, and improves system stability and management efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119917123A_ABST
    Figure CN119917123A_ABST
Patent Text Reader

Abstract

The invention belongs to the technical field of computers, and discloses a method for containerized deployment of FreeSwitch services, which comprises the following steps of: pulling a mirror image: pulling a basic Linux system mirror image from Docker Hub or other mirror image sources; and dependency is installed, wherein in the pulled mirror image, a dependency library needed by FreeSwitch is installed. According to the method, the private mirror image of the FreeSwitch is elaborately manufactured and integrated into the enterprise system, so that the deployment process of the whole communication platform can be obviously optimized, rapid deployment is realized, the consistency of the environment is ensured, the workload of an operation and maintenance team is greatly reduced, and the operation and maintenance efficiency is improved. The private mirror image comprises FreeSwitch and all dependencies thereof, configuration files and necessary optimization settings, so that the deployment process is changed from manual installation and configuration to one-key deployment; therefore, the deployment time is shortened, and the risk of inconsistent configuration caused by human errors is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of computer technology, and specifically relates to a method for containerized deployment of FreeSwitch services. Background Art

[0002] An outbound call system refers to a system that automatically dials users' phones through a computer and plays the recorded voice to users through a computer. FreeSwi tch is an open source communication framework commonly used in outbound call systems. The outbound call system FreeSwi tch is generally deployed on a physical machine or a virtual machine (such as Linux). To deploy FreeSwitch on a machine, you need to: install FreeSwitch dependencies, compile FreeSwitch and its plug-ins, update FreeSwitch configuration, and configure the network. All steps must be repeated for each new machine, which is very cumbersome. However, the problem is that different machines or virtual machines may have different hardware and software configurations, different environments, and other factors. After the FreeSwi tch service is deployed, various compatibility issues may occur, and operation and maintenance will be a headache. Therefore, it needs to be improved. Summary of the invention

[0003] The purpose of the present invention is to provide a method for containerized deployment of FreeSwitch services to solve the problems raised in the above background technology.

[0004] In order to achieve the above object, the present invention provides the following technical solution: a method for containerized deployment of FreeSwi tch service, comprising the following steps:

[0005] S1. Pull the image: Pull a basic Linux system image from Docker Hub or other image sources;

[0006] S2. Install dependencies: Install the dependency libraries required by FreeSwitch in the pulled image;

[0007] S3. Download and compile source code: Download the corresponding version of source code from the official repository of FreeSwitch and compile it in the image;

[0008] S4. Install FreeSwitch: Install the compiled FreeSwitch to the specified directory in the image;

[0009] S5. Modify basic configuration: Modify the basic configuration file of FreeSwitch according to the requirements;

[0010] S6. Clean up the image: delete the source code and other unnecessary files in the image;

[0011] S7. Save and upload the image: Save the modified image locally and upload it to the enterprise's Harbor image management system;

[0012] S8. Configure the private cloud process line: Configure the process line on the enterprise private cloud to automatically pull the business plug-in source code, compile the plug-in, and copy the configuration to the FreeSwitch container;

[0013] S9. Start the container and configure the network: After compiling and publishing the image on the private cloud, start the container and configure the network for FreeSwitch to ensure its normal operation.

[0014] Preferably, in S8:

[0015] The pulled FreeSwitch service plug-in is written in C++ language, and the FreeSwitch service plug-in source code is stored in git.

[0016] Preferably, the FreeSwitch basic service is the basic core service of FreeSwitch, does not include frequently changing business codes, and specifically includes: FreeSwitch dependent libraries and FreeSwitch executable file directories and FreeSwitch basic configurations.

[0017] Preferably, the FreeSwitch service code is mainly related to the service, including a service core plug-in and service-related configuration files.

[0018] Preferably, when the FreeSwitch service code is released, the enterprise private cloud system copies the relevant files to the FreeSwitch executable file directory and configuration file directory according to the pre-compiled script.

[0019] Preferably, in S1:

[0020] The Linux system image is generated by installing the FreeSwitch basic service in the image.

[0021] Preferably, when the FreeSwitch service container is released, the business code and configuration are pulled from the git code repository, and compiled and released in the enterprise private cloud system.

[0022] Preferably, in S5:

[0023] Only the basic configuration of FreeSwitch needs to be modified, and the service configuration does not need to be modified.

[0024] The beneficial effects of the present invention are as follows:

[0025] The present invention can significantly optimize the deployment process of the entire communication platform by carefully making a private image of FreeSwitch and integrating it into the enterprise system, which not only realizes rapid deployment, but also ensures the consistency of the environment, greatly reducing the workload of the operation and maintenance team. The private image contains FreeSwitch and all its dependencies, configuration files and necessary optimization settings, so that the deployment process is transformed from manual installation and configuration to one-click deployment; this not only shortens the deployment time, but also reduces the risk of configuration inconsistency due to human errors. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] Figure 1 This is a complete flow chart of the present invention. DETAILED DESCRIPTION

[0027] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0028] like Figure 1 As shown, an embodiment of the present invention provides a method for containerized deployment of FreeSwitch services, comprising the following steps:

[0029] S1. Pull the image: Pull a basic Linux system image from Docker Hub or other image sources;

[0030] S2. Install dependencies: Install the dependency libraries required by FreeSwitch in the pulled image;

[0031] S3. Download and compile source code: Download the corresponding version of source code from the official repository of FreeSwitch and compile it in the image;

[0032] S4. Install FreeSwitch: Install the compiled FreeSwitch to the specified directory in the image;

[0033] S5. Modify basic configuration: Modify the basic configuration file of FreeSwitch according to the requirements;

[0034] S6. Clean up the image: delete the source code and other unnecessary files in the image;

[0035] S7. Save and upload the image: Save the modified image locally and upload it to the enterprise's Harbor image management system;

[0036] S8. Configure the private cloud process line: Configure the process line on the enterprise private cloud to automatically pull the business plug-in source code, compile the plug-in, and copy the configuration to the FreeSwitch container;

[0037] S9. Start the container and configure the network: After compiling and publishing the image on the private cloud, start the container and configure the network for FreeSwitch to ensure its normal operation.

[0038] By carefully crafting a private image of FreeSwitch and integrating it into the enterprise system, the deployment process of the entire communication platform can be significantly optimized, which not only enables rapid deployment but also ensures the consistency of the environment, greatly reducing the workload of the operation and maintenance team. The private image contains FreeSwitch and all its dependencies, configuration files, and necessary optimization settings, which transforms the deployment process from manual installation and configuration to one-click deployment; this not only shortens the deployment time, but also reduces the risk of inconsistent configuration due to human errors.

[0039] Using the same private image to deploy on all servers ensures that the FreeSwitch operating environment is consistent regardless of development, testing, or production environments. This consistency helps to quickly locate and solve problems, and also facilitates subsequent maintenance and upgrades.

[0040] Among them, in S8:

[0041] The pulled FreeSwitch service plug-in is written in C++ language, and the FreeSwitch service plug-in source code is saved in git.

[0042] Storing the FreeSwitch business plug-in source code in Git and writing it in C++ brings many benefits, including version control, collaborative development, code management, CI / CD integration, high performance, code reuse and modularity, as well as security and compliance. These advantages help improve development efficiency, code quality, and software delivery speed, thereby bringing greater business value to the enterprise.

[0043] Among them, FreeSwitch basic services are the basic core services of FreeSwitch, excluding frequently changing business codes, including: FreeSwitch dependency libraries, FreeSwitch executable file directories, and FreeSwitch basic configurations.

[0044] Separating FreeSwitch basic services from frequently changing business codes helps improve system stability, simplify maintenance and upgrade processes, enhance security, promote team collaboration, optimize resource utilization, and support rapid response and fault recovery. These benefits together provide a strong guarantee for the stable operation and efficient management of the FreeSwitch communication system.

[0045] Among them, the FreeSwitch business code is mainly related to the business, including business core plug-ins and business-related configuration files.

[0046] The business logic is clear and independent, which facilitates rapid development and iteration; the configuration files are flexible and customizable to meet different business needs; it is separated from the basic services to reduce system complexity and coupling, and improve overall stability and maintainability; at the same time, the modular design of business code facilitates code reuse and team collaboration, accelerates the launch of new functions, and improves business response speed.

[0047] Among them, when the FreeSwitch business code is released, the enterprise private cloud system copies the relevant files to the FreeSwitch executable file directory and configuration file directory according to the pre-compiled script.

[0048] Automated deployment through pre-written scripts greatly simplifies the release process and reduces the risk of errors caused by human operations; ensures that each code and configuration released to the production environment are tested and verified, thereby improving the consistency of the environment and reducing the failure rate caused by inconsistent configuration.

[0049] Among them, in S1:

[0050] The Linux system image is generated by installing the FreeSwitch basic service in the image.

[0051] Integrating FreeSwitch basic services into the Linux system image makes the entire deployment process simpler and more efficient. Users do not need to install FreeSwitch and its dependencies separately, they only need to deploy the image to quickly start the service, which reduces the deployment difficulty and time cost.

[0052] When the FreeSwitch service container is released, the business code and configuration are pulled from the git code repository, and then compiled and released in the enterprise private cloud system.

[0053] When the FreeSwitch service container is released, the business code and configuration are pulled from the Git code repository, and compiled and released on the enterprise private cloud system. This approach brings significant benefits in code version management, automation and efficiency, environment consistency, security, flexibility and scalability, team collaboration, and resource utilization optimization.

[0054] Among them, in S5:

[0055] Only the basic configuration of FreeSwitch needs to be modified, and the service configuration does not need to be modified.

[0056] Only modifying the basic configuration of FreeSwitch while keeping the business configuration unchanged can reduce the risk of change, simplify operation and maintenance, maintain business stability, optimize resource utilization, facilitate problem troubleshooting, and support rapid iteration. These benefits help ensure the stable operation and efficient management of FreeSwitch services.

[0057] It should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device.

[0058] Although embodiments of the present invention have been shown and described, it will be appreciated by those skilled in the art that various changes, modifications, substitutions and variations may be made to the embodiments without departing from the principles and spirit of the present invention, and that the scope of the present invention is defined by the appended claims and their equivalents.

Claims

1. A method for containerized deployment of FreeSwitch services, characterized in that: The following steps are involved: S1. Pull the image: Pull a basic Linux system image from Docker Hub or other image sources; S2. Install dependencies: Install the dependency libraries required by FreeSwitch in the pulled image; S3. Download and compile source code: Download the corresponding version of source code from the official repository of FreeSwitch and compile it in the image; S4. Install FreeSwitch: Install the compiled FreeSwitch to the specified directory in the image; S5. Modify basic configuration: Modify the basic configuration file of FreeSwitch according to the requirements; S6. Clean up the image: delete the source code and other unnecessary files in the image; S7. Save and upload the image: Save the modified image locally and upload it to the enterprise's Harbor image management system; S8. Configure the private cloud process line: Configure the process line on the enterprise private cloud to automatically pull the business plug-in source code, compile the plug-in, and copy the configuration to the FreeSwitch container; S9. Start the container and configure the network: After compiling and publishing the image on the private cloud, start the container and configure the network for FreeSwitch to ensure its normal operation.

2. A method for containerized deployment of FreeSwitch services according to claim 1, characterized in that: The FreeSwitch service plug-in pulled in S8 is written in C++ language, and the FreeSwitch service plug-in source code is saved in git.

3. A method for containerized deployment of FreeSwitch services according to claim 1, characterized in that: The FreeSwitch basic service is the basic core service of FreeSwitch, excluding frequently changing business codes, and specifically includes: FreeSwitch dependency libraries, FreeSwitch executable file directories, and FreeSwitch basic configurations.

4. The method for containerized deployment of FreeSwitch services according to claim 1, characterized in that: The FreeSwitch business code is mainly related to the business, including business core plug-ins and business-related configuration files.

5. The method for containerized deployment of FreeSwitch services according to claim 1, characterized in that: When the FreeSwitch service code is released, the enterprise private cloud system copies the relevant files to the FreeSwitch executable file directory and configuration file directory according to the pre-compiled script.

6. A method for containerized deployment of FreeSwitch services according to claim 1, characterized in that: The Linux system image in S1 is generated by installing the FreeSwitch basic service in the image.

7. A method for containerized deployment of FreeSwitch services according to claim 1, characterized in that: When the FreeSwitch service container is released, the business code and configuration are pulled from the git code repository, and compiled and released in the enterprise private cloud system.

8. A method for containerized deployment of FreeSwitch services according to claim 1, characterized in that: In the above S5, only the basic configuration of FreeSwitch is modified, and the service configuration does not need to be modified.

Citation Information

Patent Citations

  • Method and device for deploying FreeSWITCH service, electronic equipment and storage medium

    CN114124739A