Desktop cloud terminal creation and operation method and system based on Podman
By customizing Podman execution scripts and shell scripts, generating desktop cloud terminal images, and deploying Podman containers in computing terminals, solving the problem of rapid adaptation and deployment and installation of desktop cloud terminals on different operating systems, reducing R&D costs and cycles .
Patent Information
- Application Number
- CN202111328538.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-10
- Publication Date
- 2025-02-25
- Estimated Expiration
- 2041-11-10
AI Technical Summary
When the prior art realizes rapid adaptation and deployment and installation of desktop cloud terminals based on different operating systems, it requires a lot of R&D resources and time, and the cost is high.
By customizing Podman execution scripts and shell scripts, generate desktop cloud terminal images, and deploy Podman containers in the compute terminal, mount working directory and network card devices, specify Display attributes and map USB external device characters, implement Audio client and OEIDP Virtualized desktop cloud server interaction.
It solves the problem of rapid adaptation and deployment and installation of desktop cloud terminals on different operating systems, reduces R&D costs and cycles, and optimizes the use of computing terminal resources.
Smart Images

Figure CN114138261B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of desktop cloud computing, and in particular to a method and system for creating and running a desktop cloud terminal based on Podman. Background Art
[0002] Computing terminals are an important link in the desktop cloud computing industry chain. In the process of cloud computing development, cloud terminal products continue to emerge. Existing cloud terminal products are based on a wide variety of operating systems: such as traditional operating systems, such as the Fedora series operating system, the Ubuntu series operating system, etc., and domestic operating systems under the background of domestic substitution, such as the UOS operating system and the Kylin operating system.
[0003] However, if the desktop cloud terminal function based on OEIDP (a self-developed network protocol used to provide remote interaction with virtual desktop devices) is to be realized under the premise of the above-mentioned wide variety of operating systems and the rapid update and iteration of domestic operating systems, it is necessary to adapt and maintain the desktop cloud terminal for different operating systems and corresponding versions, which requires a large number of R&D personnel and funds, and a long R&D cycle. Summary of the invention
[0004] In view of the defects existing in the prior art, the purpose of the present invention is to provide a desktop cloud terminal creation and operation method and system based on Podman, which solves the problem of rapid adaptation and deployment and installation of desktop cloud terminals based on different operating systems, while reducing R&D costs and cycles.
[0005] To achieve the above purpose, the present invention provides a method for creating and running a desktop cloud terminal based on Podman, which specifically includes the following steps:
[0006] Customize the Podman execution script for generating the desktop cloud terminal image and the shell script for starting the desktop cloud terminal image;
[0007] Start the Podman containerization program and deploy the Podman container on the computing terminal, and mount the working directory and network card device in the deployed Podman container;
[0008] Specify the Display property of the graphics output for the deployed Podman container, and map the USB external device symbol of the computing terminal;
[0009] Implement the Audio client in the deployed Podman container, complete the operation of the desktop cloud terminal graphics program, and implement interaction with the OEIDP virtualized desktop cloud server.
[0010] On the basis of the above technical solution, the customized Podman execution script for generating a desktop cloud terminal image includes the following specific steps:
[0011] Based on the tar command, export the resource tarball of the physical terminal system running the desktop cloud application;
[0012] Based on the exported resource tarball, customize the Podman execution script used to generate the desktop cloud terminal image;
[0013] Get the customized Podman execution script through the Podman command and generate the desktop cloud terminal image.
[0014] On the basis of the above technical solution, the Podman execution script for generating a desktop cloud terminal image and the shell script for starting the desktop cloud terminal image are customized, wherein the shell script for starting the desktop cloud terminal image is customized, and the specific steps include:
[0015] Customize the shell script in the Podman container startup process;
[0016] Based on a custom shell script, the resolution configuration of the computing terminal is detected, and the resolution adaptation configuration of the desktop cloud terminal graphics program is performed;
[0017] Based on the custom shell script, configure the user permissions for running the desktop cloud terminal graphics program;
[0018] Based on the Podman command, add running parameters and start the desktop cloud terminal image.
[0019] On the basis of the above technical solution, the working directory includes a temporary working directory, a running log directory, and a graphic resource file directory.
[0020] On the basis of the above technical solution, after the working directory is mounted in the deployed Podman container, it also includes: setting the running work permission and encryption method for the mounted working directory.
[0021] Based on the above technical solution, after specifying the Display property of running graphic output for the deployed Podman container, it also includes:
[0022] Based on the multi-core CPU properties of the computing terminal, it is designed to implement a concurrent and mutually exclusive rendering mechanism based on screen regions and private queues.
[0023] Based on the above technical solution, after mapping the computing terminal USB external device symbol to the deployed Podman container, it also includes:
[0024] Add a USB peripheral agent in the Podman container to implement USB peripheral permission filtering and data relay compression forwarding.
[0025] Based on the above technical solution, the Audio client is implemented in the deployed Podman container, and the specific steps include:
[0026] Based on the PulseAudio Server socket method, the Audio client is implemented in the deployed Podman container;
[0027] Add the electromagnetic noise reduction function of PCM audio stream based on Speex technology to the recording channel of the implemented Audio client.
[0028] On the basis of the above technical solution, the desktop cloud terminal graphics program interacts with the OEIDP virtualized desktop cloud server through a virtual network card device formed by a network card device mounted in a Podman container.
[0029] The present invention provides a Podman-based desktop cloud terminal creation and operation system, comprising:
[0030] A custom module, which is used to customize the Podman execution script and the shell script. The Podman execution script is used to generate a desktop cloud terminal image, and the shell script is used to start the desktop cloud terminal image;
[0031] The mount module is used to start the Podman container program and deploy the Podman container on the computing terminal, and mount the working directory and network card device in the deployed Podman container;
[0032] The execution module is used to specify the Display attribute of the running graphics output for the deployed Podman container and map the USB external device symbol of the computing terminal;
[0033] The interaction module is used to implement the Audio client in the deployed Podman container, complete the operation of the desktop cloud terminal graphics program and realize the interaction with the OEIDP virtualized desktop cloud server.
[0034] Compared with the prior art, the advantages of the present invention are: by customizing the Podman execution script and the shell script, the Podman container is deployed in the computing terminal, the working directory and the network card device are mounted in the deployed Podman container, the Display attribute of the running graphic output is specified for the deployed Podman container, and the USB external device symbol of the computing terminal is mapped, and finally the Audio client is implemented in the deployed Podman container, the running of the desktop cloud terminal graphic program is completed and the interaction with the OEIDP virtualized desktop cloud server is realized, that is, the human-computer interaction between the desktop cloud terminal graphic program and the OEIDP virtualized desktop cloud server is realized in the Podman container, the problem of rapid adaptation and deployment and installation of the desktop cloud terminal based on different operating systems is solved, and the use of computing terminal resources is optimized and improved, while reducing the research and development cost and cycle. BRIEF DESCRIPTION OF THE DRAWINGS
[0035] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0036] Figure 1 A flowchart of a method for creating and operating a desktop cloud terminal based on Podman in an embodiment of the present invention;
[0037] Figure 2 The diagram is a schematic diagram of the operating topology of the desktop cloud terminal based on Podman. DETAILED DESCRIPTION
[0038] The embodiment of the present invention provides a method for creating and running a desktop cloud terminal based on Podman, by customizing the Podman execution script and shell script, and then deploying the Podman container in the computing terminal, and mounting the working directory and network card device in the deployed Podman container, and specifying the Display attribute of the running graphic output for the deployed Podman container, and mapping the computing terminal USB external device symbol, and finally implementing the Audio client in the deployed Podman container, completing the operation of the desktop cloud terminal graphics program and realizing the interaction with the OEIDP virtualized desktop cloud server, that is, realizing the human-computer interaction between the desktop cloud terminal graphics program and the OEIDP virtualized desktop cloud server in the Podman container, solving the problem of rapid adaptation and deployment and installation of desktop cloud terminals based on different operating systems, and optimizing and improving the use of computing terminal resources, while reducing research and development costs and cycles. The embodiment of the present invention also provides a desktop cloud terminal creation and operation system based on Podman accordingly.
[0039] In order to make the purpose, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments.
[0040] See also Figure 1 As shown, a method for creating and running a desktop cloud terminal based on Podman is provided in an embodiment of the present invention, and specifically comprises the following steps:
[0041] S1: Customize the Podman (an open source container operation project) execution script for generating the desktop cloud terminal image, and the shell script for starting the desktop cloud terminal image;
[0042] In the embodiment of the present invention, by customizing a Podman execution script, a desktop cloud terminal image can be automatically generated based on the customized Podman execution script.
[0043] In the embodiment of the present invention, in addition to automatically starting the desktop cloud terminal image, the function of the customized shell script is also used to adapt or configure the graphics display resolution within the Podman container process, and configure the permissions of all users to use the graphics service.
[0044] S2: Start the Podman containerization program and deploy the Podman container on the computing terminal, and mount the working directory and network card device in the deployed Podman container; that is, mount the working directory of the computing terminal in the deployed Podman container, and mount the network card device in the deployed Podman container to form a virtual network card device.
[0045] In the embodiment of the present invention, the working directory includes a temporary working directory, a running log directory, and a graphic resource file directory.
[0046] S3: Specify the Display properties of the graphics output for the deployed Podman container, and map the USB (Universal Serial Bus) external device symbol of the computing terminal;
[0047] S4: Implement the Audio client in the deployed Podman container, complete the operation of the desktop cloud terminal graphics program and implement interaction with the OEIDP virtualized desktop cloud server.
[0048] The above step S1 is the creation of the desktop cloud terminal, and steps S2 to S4 are the running of the desktop cloud terminal graphic program.
[0049] In the embodiment of the present invention, the Podman execution script for generating a desktop cloud terminal image is customized, and the specific steps include:
[0050] S111: Based on the tar command, export the resource tar package of the physical terminal system running the desktop cloud application; that is, based on the physical terminal system running the desktop cloud application, export the system running resource tar package through the tar command. The tar command is a common packaging and backup command, and the package packaged using the tar command is called a tar package.
[0051] S112: Based on the exported resource tarball, a Podman execution script for generating a desktop cloud terminal image is customized; that is, a Podman execution script is customized according to the resource tarball, and the desktop cloud terminal image is automatically generated through the Podman execution script later.
[0052] S113: Obtain a customized Podman execution script through the Podman command and generate a desktop cloud terminal image.
[0053] In an embodiment of the present invention, a Podman execution script for generating a desktop cloud terminal image and a shell script for starting the desktop cloud terminal image are customized, wherein the shell script for starting the desktop cloud terminal image is customized, and the specific steps include:
[0054] S121: Customize shell scripts in the Podman container startup process;
[0055] S123: Based on the custom shell script, the resolution configuration of the computing terminal is detected, and the resolution adaptation configuration of the desktop cloud terminal graphic program is performed; that is, the resolution of the desktop cloud terminal graphic program can adapt to the resolution of the computing terminal.
[0056] S124: Based on the custom shell script, configure the running configuration user permission of the desktop cloud terminal graphic program;
[0057] S125: Based on the Podman command, add running parameters and start the desktop cloud terminal image. That is, under the Podman command, add running parameters and then start the desktop cloud terminal image.
[0058] In an embodiment of the present invention, after mounting the working directory in the deployed Podman container, it also includes: setting the running working permission and encryption method for the mounted working directory. That is, setting the running working permission and encryption method for the working directory. The running working permission is the read and write access permission of the desktop cloud terminal graphic program to the working directory and the files in the working directory.
[0059] In an embodiment of the present invention, after the Display property of the deployed Podman container is specified to run the graphics output, it also includes: based on the multi-core CPU (Central Processing Unit) property of the computing terminal, a rendering mechanism designed to implement concurrent and mutually exclusive rendering on the screen by screen area and private queue is designed. By designing a rendering mechanism for concurrent and mutually exclusive rendering on the screen by screen area and private queue, the problem of low display performance of Podman is solved, as if the graphics program is directly running on the computing terminal.
[0060] In the embodiment of the present invention, after the deployed Podman container is mapped with the computing terminal USB external device symbol, it also includes: adding a USB peripheral agent in the Podman container for implementing USB peripheral permission filtering and data relay compression forwarding. That is, after the computing terminal USB external device symbol is mapped to the Podman container, a USB peripheral agent is added in the Podman environment to implement the USB peripheral permission filtering mechanism and the data relay compression forwarding mechanism, thereby realizing the USB device redirection function of the desktop cloud terminal.
[0061] In the embodiment of the present invention, the Audio client is implemented in the deployed Podman container, and the specific steps include:
[0062] S401: Implementing the Audio client in the deployed Podman container based on the PulseAudio Server (sound server) socket method;
[0063] S402: Add the electromagnetic noise reduction function of PCM (Pulse Code Modulation) audio stream based on Speex (an audio compression format) technology to the recording channel of the implemented Audio client. By adding the electromagnetic noise reduction function of PCM audio stream based on Speex technology to the recording channel, the recording and playback functions of the desktop cloud terminal are realized in the Podman environment.
[0064] In the embodiment of the present invention, the desktop cloud terminal graphical program interacts with the OEIDP virtualized desktop cloud server through the virtual network card device formed by the network card device mounted in the Podman container. The interaction specifically includes: user resource package upgrade and authorized login, and then obtaining the user's virtual machine list, the user selects the required virtual machine desktop for access operation, so that the user operates directly on the computing terminal.
[0065] See also Figure 2As shown, it is a schematic diagram of the operating topology of the desktop cloud terminal based on Podman. By deploying the Podman container in the computing terminal and running the desktop cloud terminal graphics program in the Podman container, the desktop cloud terminal graphics program includes Display parallel optimization processing, PulseAudio client, USB peripheral agent, network card transparent transmission and working directory mounting. The desktop cloud terminal graphics program interacts with the OEIDP virtualized desktop cloud server through the network card. Figure 2 PulseAudio in it represents the sound server.
[0066] The Podman-based desktop cloud terminal creation and operation method of the embodiment of the present invention customizes the Podman execution script and shell script, then deploys the Podman container in the computing terminal, mounts the working directory and the network card device in the deployed Podman container, specifies the Display attribute of the running graphic output for the deployed Podman container, and maps the computing terminal USB external device symbol, and finally implements the Audio client in the deployed Podman container, completes the operation of the desktop cloud terminal graphic program and realizes the interaction with the OEIDP virtualized desktop cloud server, that is, realizes the human-computer interaction between the desktop cloud terminal graphic program and the OEIDP virtualized desktop cloud server in the Podman container, solves the problem of rapid adaptation and deployment and installation of the desktop cloud terminal based on different operating systems, optimizes and improves the use of computing terminal resources, and reduces the research and development cost and cycle.
[0067] The embodiment of the present invention provides a Podman-based desktop cloud terminal creation and operation system, which includes a custom module, a mounting module, an execution module and an interaction module.
[0068] The custom module is used to customize the Podman execution script and shell script. The Podman execution script is used to generate a desktop cloud terminal image, and the shell script is used to start the desktop cloud terminal image; the mounting module is used to start the Podman containerization program and deploy the Podman container on the computing terminal, and mount the working directory and network card device in the deployed Podman container; the execution module is used to specify the Display properties of the running graphics output for the deployed Podman container, and map the USB external device symbol of the computing terminal; the interaction module is used to implement the Audio client in the deployed Podman container, complete the operation of the desktop cloud terminal graphics program and realize the interaction with the OEIDP virtualized desktop cloud server.
[0069] The above description is only a specific implementation of the present application, so that those skilled in the art can understand or implement the present application. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein can be implemented in other embodiments without departing from the spirit or scope of the present application. Therefore, the present application will not be limited to the embodiments shown herein, but will conform to the widest range consistent with the principles and novel features applied for herein.
[0070] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems) and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the process in the flowchart. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
Claims
1. A method for creating and running a desktop cloud terminal based on Podman, characterized in that: The specific steps include: Customize the Podman execution script for generating the desktop cloud terminal image and the shell script for starting the desktop cloud terminal image; Start the Podman containerization program and deploy the Podman container on the computing terminal, and mount the working directory and network card device in the deployed Podman container; Specify the Display property of the graphics output for the deployed Podman container, and map the USB external device symbol of the computing terminal; Implement the Audio client in the deployed Podman container, complete the operation of the desktop cloud terminal graphics program, and implement interaction with the OEIDP virtualized desktop cloud server; The custom Podman execution script for generating a desktop cloud terminal image includes the following specific steps: Based on the tar command, export the resource tarball of the physical terminal system running the desktop cloud application; Based on the exported resource tarball, customize the Podman execution script used to generate the desktop cloud terminal image; Get the customized Podman execution script through the Podman command and generate the desktop cloud terminal image.
2. A method for creating and running a desktop cloud terminal based on Podman as described in claim 1, characterized in that: The customized Podman execution script for generating a desktop cloud terminal image and a shell script for starting the desktop cloud terminal image, wherein the customized generation of the shell script for starting the desktop cloud terminal image comprises the following specific steps: Customize the shell script in the Podman container startup process; Based on a custom shell script, the resolution configuration of the computing terminal is detected, and the resolution adaptation configuration of the desktop cloud terminal graphics program is performed; Based on the custom shell script, configure the user permissions for running the desktop cloud terminal graphics program; Based on the Podman command, add running parameters and start the desktop cloud terminal image.
3. A method for creating and running a desktop cloud terminal based on Podman as claimed in claim 1, characterized in that: The working directory includes a temporary working directory, a running log directory, and a graphic resource file directory.
4. A method for creating and running a desktop cloud terminal based on Podman as claimed in claim 1, characterized in that: After mounting the working directory in the deployed Podman container, it also includes: setting the running working permissions and encryption method for the mounted working directory.
5. A method for creating and running a desktop cloud terminal based on Podman as claimed in claim 1, characterized in that: When the Display property of running graphical output is specified for the deployed Podman container, it also includes: Based on the multi-core CPU properties of the computing terminal, it is designed to implement a concurrent and mutually exclusive rendering mechanism based on screen regions and private queues.
6. A method for creating and running a desktop cloud terminal based on Podman as claimed in claim 1, characterized in that: After mapping the computing terminal USB external device symbol to the deployed Podman container, it also includes: Add a USB peripheral agent in the Podman container to implement USB peripheral permission filtering and data relay compression forwarding.
7. A method for creating and running a desktop cloud terminal based on Podman as claimed in claim 1, characterized in that: The specific steps of implementing the Audio client in the deployed Podman container include: Based on the PulseAudio Server socket method, the Audio client is implemented in the deployed Podman container; Add the electromagnetic noise reduction function of PCM audio stream based on Speex technology to the recording channel of the implemented Audio client.
8. A method for creating and running a desktop cloud terminal based on Podman as claimed in claim 1, characterized in that: The desktop cloud terminal graphics program interacts with the OEIDP virtualized desktop cloud server through a virtual network card device formed by a network card device mounted in a Podman container.
9. A desktop cloud terminal creation and operation system based on Podman, characterized in that: include: A custom module, which is used to customize the Podman execution script and the shell script. The Podman execution script is used to generate a desktop cloud terminal image, and the shell script is used to start the desktop cloud terminal image; The mount module is used to start the Podman container program and deploy the Podman container on the computing terminal, and mount the working directory and network card device in the deployed Podman container; The execution module is used to specify the Display attribute of the running graphics output for the deployed Podman container and map the USB external device symbol of the computing terminal; The interaction module is used to implement the Audio client in the deployed Podman container, complete the operation of the desktop cloud terminal graphics program and realize the interaction with the OEIDP virtualized desktop cloud server; The custom Podman execution script for generating a desktop cloud terminal image includes the following specific steps: Based on the tar command, export the resource tarball of the physical terminal system running the desktop cloud application; Based on the exported resource tarball, customize the Podman execution script used to generate the desktop cloud terminal image; Get the customized Podman execution script through the Podman command and generate the desktop cloud terminal image.
Citation Information
Patent Citations
Container application starting method and device and medium
CN112799778A