WO2021258951A1 - 一种镜像文件生成方法、装置和计算机可读存储介质 - Google Patents
一种镜像文件生成方法、装置和计算机可读存储介质 Download PDFInfo
- Publication number
- WO2021258951A1 WO2021258951A1 PCT/CN2021/095410 CN2021095410W WO2021258951A1 WO 2021258951 A1 WO2021258951 A1 WO 2021258951A1 CN 2021095410 W CN2021095410 W CN 2021095410W WO 2021258951 A1 WO2021258951 A1 WO 2021258951A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- application
- data
- application program
- file
- image file
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/656—Updates while running
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Definitions
- This application relates to the field of communication technology, and in particular to a method, device and computer-readable storage medium for generating a mirror file.
- the embodiments of the present application provide a method and device for generating an image file, and a computer-readable storage medium. It can save storage resources, save the processing resources of the device where the application is deployed, and reduce the deployment time of the application.
- an embodiment of the present application provides a device for generating an image file, including:
- the running unit is configured to install the application program corresponding to the application program installation file in the operating system and run the application program to obtain the system data set after the application program is run and the attribute information of the application program;
- an embodiment of the present application also provides an electronic device, including a processor and a memory, the memory stores a plurality of program instructions, and the processor is used to run the program instructions in the memory to execute the program instructions provided in the embodiments of the present application.
- the method of image file generation is used to run the program instructions in the memory to execute the program instructions provided in the embodiments of the present application.
- an embodiment of the present application also provides a computer-readable storage medium that stores a plurality of instructions, and the instructions are suitable for loading by a processor to execute any of the instructions provided in the embodiments of the present application. Steps in a method of generating image files.
- FIG. 1 is a schematic diagram of a scene of a method for generating a mirror file provided by an embodiment of the present application
- FIG. 2 is a schematic flowchart of a method for generating a mirror file provided by an embodiment of the present application
- FIG. 3 is a schematic diagram of a flow of installation and operation of an application program provided by an embodiment of the present application
- FIG. 4 is a schematic diagram of identifying initial application data provided by an embodiment of the present application.
- FIG. 5 is a schematic diagram of adjusting initial application data provided by an embodiment of the present application.
- FIG. 6 is a schematic diagram of generating a mirror file of an application program provided by an embodiment of the present application.
- FIG. 7 is a schematic diagram of a mirror file after overlaying a read-write layer provided by an embodiment of the present application.
- FIG. 8 is a schematic diagram of adjusting update data provided by an embodiment of the present application.
- FIG. 10 is a schematic structural diagram of a cloud game system provided by an embodiment of the present application.
- FIG. 11 is a schematic diagram of a cloud game page provided by an embodiment of the present application.
- FIG. 12 is a schematic structural diagram of an image file generating apparatus provided by an embodiment of the present application.
- FIG. 13 is another schematic diagram of the structure of the image file generating apparatus provided by an embodiment of the present application.
- Fig. 14 is a schematic structural diagram of an electronic device provided by an embodiment of the present application.
- the embodiments of the present application provide a method and device for generating an image file, and a computer-readable storage medium.
- the device for generating a mirror image file may be integrated in an electronic device, and the electronic device may be a server or a terminal and other devices.
- mirror file refers to a single file made from a specific series of files according to a certain format for the convenience of users to download and use. For example, it can be a stored file obtained through the file storage method of mirroring.
- users can directly open and run the application through the image file of the application, instead of installing the application after building the operating environment through hardware, which can greatly speed up the deployment time of the application and reduce the running time of the application.
- the hardware configuration required by the application is not limited to be used.
- the server can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or it can provide cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, and cloud communications. , Middleware services, domain name services, security services, network acceleration services, and cloud servers for basic cloud computing services such as big data and artificial intelligence platforms.
- the terminal can be a smart phone, a tablet computer, a notebook computer, a desktop computer, a smart speaker, a smart watch, etc., but it is not limited to this.
- the terminal and the server can be directly or indirectly connected through wired or wireless communication, which is not limited in this application.
- the image file generation request carries the application installation file.
- the system is preset The area loads the basic image file of the operating system to start the operating system, and then installs the application program corresponding to the application installation file in the operating system, and runs the application program to obtain the system data collection and the attribute information of the application program after running the application program , According to the attribute information of the application, filter out the application data corresponding to the application in the system data collection, and merge the application data with the basic mirror file to generate the mirror file of the application.
- the preset system area may be a system container in the cloud platform.
- Cloud platforms are also called cloud computing platforms, used for services based on hardware resources and software resources, and provide computing, network, and storage capabilities.
- Cloud computing is a computing model that distributes computing tasks on a resource pool composed of a large number of computers, enabling various application systems to obtain computing power, storage space, and information services as needed.
- the network that provides resources is called the “cloud.”
- the resources in the "cloud” are infinitely expandable in the eyes of users, and can be obtained at any time, used on demand, expanded at any time, and paid for.
- Cloud computing resource pool (cloud platform for short, generally called IaaS (Infrastructure as a Service, infrastructure as a service), deploy multiple types of virtual resources in the resource pool for external Customers choose to use.
- Cloud computing resource pool mainly includes: computing equipment (virtualized machine, including operating system), storage equipment, network equipment.
- the PaaS (Platform as a Service) layer can be deployed on the IaaS layer, and the SaaS (Software as Service) layer can be deployed on the PaaS layer, or the SaaS can be deployed directly on the On IaaS.
- PaaS is a platform on which software runs, such as databases and web containers.
- SaaS is a variety of business software, such as web portals, SMS group senders, etc.
- SaaS and PaaS are the upper layer relative to IaaS.
- the image file generating apparatus may be specifically integrated in an electronic device.
- the electronic device may be a server or a terminal or other equipment.
- the terminal may include a tablet computer, a notebook computer, a personal computer (PC, Personal Computer), a wearable device, a virtual reality device, or other smart devices that can generate image files.
- the embodiment of the application provides a method for generating an image file, which is executed by an electronic device.
- the specific process of the image file generation method includes the following steps 101-105:
- Step 101 Receive a mirror file generation request.
- the image file generation request carries an application program installation file.
- the application installation file may be an installation file required to install the application, and the installation file may include a compiled code file, a resource file, a certificate file, and the like.
- the format of the application installation file may be different. Taking the Android operating system as an example, the application installation file may be an Android application package (APK), that is, an APK file.
- API Android application package
- the image file generation request can be directly received.
- the terminal can directly add the application installation file to the image file generation request, and then send the image file generation request for adding the application installation file to the image file generation device, and the image file generation device directly receives the image file generation request and sends it from The application installation file is extracted from the image file generation request.
- these application installation files can also be obtained indirectly.
- the terminal can store the application installation file in a third-party database, and then add the storage address to the mirror file generation request, and send the mirror file generation request with the storage address added to the mirror file generation device, the mirror file generation device
- the storage address is extracted from the mirror file generation request, and then the application installation file is obtained from the third-party database according to the storage address.
- a prompt message can be sent to the terminal to prompt the terminal.
- Step 102 According to the image file generation request, load the basic image file of the operating system in the preset system area to start the operating system.
- the operating system may be an operating system running in a preset system area, and the preset system area may be a system container running through an isolation mechanism in a physical operating system supported by hardware, for example, a container running the Android operating system may be sufficient.
- Called Android container each server or cloud server can include multiple Android containers. Multiple operating systems can run in the system container, and multiple operating systems running in the system container can remain independent of each other.
- the basic image file may be an image file containing only the operating system. Therefore, the operating system can be started by loading the image file.
- the Android basic image file of the Android operating system is loaded in the Android container.
- the Android operation can be started in the Android container. system.
- Step 103 Install the application program corresponding to the application program installation file in the operating system, and run the application program to obtain the system data collection and the attribute information of the application program after the application program is run.
- the installed application before running the application to obtain the system data collection and the attribute information of the application, the installed application can also be configured, that is, in the step "run the application, get the system data collection after running the application” And the attribute information of the application", the image file generation method may also include: querying the application installation file for configuration information for configuring the application, and when the configuration information exists, configuring the application according to the configuration information, After the configuration is completed, run the configured application on the operating system to obtain the system data collection and the attribute information of the application after running the configured application, which can be specifically as follows:
- the file name or file format of the data update information or the preset parameter information may be used as the query condition to query whether there is configuration information for configuring the application in the application installation file.
- the application when there is configuration information, the application is configured according to the specific existing configuration information.
- the configuration information is data update information
- the built-in data corresponding to the data update information in the application is updated.
- the data update information is updated data
- the built-in data corresponding to the updated data is queried in the application, and the built-in data is directly replaced with the updated data.
- the specific update process can be triggered by manual click or automatic identification by artificial intelligence.
- the data update information is the storage address of the updated data
- the updated data can be obtained according to the storage address, and then the built-in data corresponding to the updated data is queried in the application, and the built-in data is replaced with the updated data.
- the parameter corresponding to the preset parameter information in the application is set. For example, taking the preset parameter information as the preset picture frame number as an example, directly in the frame number setting of the application program, the picture frame number in the application program is set to the preset picture frame number.
- the configuration information is data update information and preset parameter information
- the built-in data corresponding to the data update information in the application program is updated, and the parameters corresponding to the preset parameter information in the updated application program are set.
- the application program needs to be configured only when there is configuration information. After the configuration is completed, the configured application program is run to obtain the system data collection and the attribute information of the application program after the configured application program is run. If there is no configuration information, you can run the application directly after the application is installed, and then obtain the system data collection and the attribute information of the application after the application is run. For installing and running the application, the specific process of obtaining the system data collection and the attribute information of the application can be shown in Figure 3.
- Step 104 Filter out the application data corresponding to the application in the system data collection according to the attribute information of the application.
- the application data may be data related to the application program, for example, it may be data supporting the operation of the application program.
- the application data may be game data in the XX cloud game.
- Step S1 according to the attribute information of the application program, traverse the system data collection to obtain the initial application data after the application program is installed.
- step S1 may include: obtaining the global catalog of the system data collection, for example, obtaining the global root catalog in the system container, and using this global root catalog as the global catalog of the system data collection.
- Step S1 may further include: filtering out the target catalog in the global catalog according to the attribute information of the application, for example, filtering out the catalog corresponding to the attribute information in the global catalog according to the attribute information of the application, for example, the name of the application corresponds to The file directory of the file, these directories are used as the target directory.
- Step S1 may further include: based on the target directory, identifying the initial application data after the application is installed in the system data set to obtain the initial application data set. For example, the candidate system data corresponding to the target directory may be filtered out from the system data set. Identify the initial application data corresponding to the application in these candidate system data, as shown in Figure 4, and save the initial application data in the initial application data set.
- Step S2 Adjust the initial application data to obtain application data corresponding to the application program.
- the first shared data set may be constructed in an area other than the operating system, so that the first shared data set and the initial application data set share the initial application data.
- the data corresponding to the container directory can be the initial application data collection, and the last one of the host
- the data corresponding to the directory may be the first shared data set.
- the first shared data set can share the initial application data with the initial application data set.
- the initial application data is adjusted in the first shared data set to obtain application data corresponding to the application program, as shown in FIG. 5.
- the abnormal data and configuration data can be identified in the application data according to the first preset identification condition.
- the initial application data can also be transferred and modified through the abd command or other methods.
- the abnormal data in the initial application data can also be deleted in the first shared data set, and the configuration data in the initial application data can be changed.
- the abnormal data in the initial application can be deleted.
- the abnormal data can include part of the temporary data in the running of the application and data not related to the application.
- the temporary data that needs to be deleted can be "/mnt/runtime/read", Related files in "/mnt/runtime/write", "/storage/emulated” and other directories.
- the package name of the data package can also be used as the query condition.
- the package name of the data package can be "com.tenxxx.tmgp.sgame" and the target configuration data can be queried from all the configuration data.
- the target configuration data can be For data such as related fields in files such as "/data/system/packages.xml” and “/data/system/packages.list”, the target configuration data is retained, and other configuration data is changed or deleted. The purpose of this is to keep as little application related data as possible and reduce the coupling with the basic image file.
- the icon display of some applications on the Android desktop system can also be changed. For example, when creating a mirror file, some icons need to be displayed for the user to click.
- these icons need to be hidden (for example, QQ, WeChat and other application icons), so you need to change the corresponding configuration file to adjust the status of the corresponding icon, by deleting and changing the configuration data, you can get the application data corresponding to the application.
- Step 105 Combine the application data with the basic image file to generate an image file of the application program.
- the basic image file includes at least one read-only layer.
- the read-only layer can only read the data on it, but cannot modify the data.
- a read-write layer can be added to the basic image file. The biggest difference between the read-write layer and the read-only layer is that the data in the read-write layer can be read and modified.
- the basic information of the read-write layer that needs to be added to the basic image file can be determined according to the application data. For example, the number of read-write layers and the memory size of the read-write layer can be determined according to the data size and data type of the application data.
- Basic information such as the location of the read-write layer and the type of the read-write layer.
- Add a read-write layer corresponding to the basic information on the read-only layer of the basic image file for example, add a read-write layer corresponding to the type, number, and memory size of the read-write layer at a specific position of the read-only layer of the basic image file.
- the application data is added to the read-write layer to obtain the image file of the application, as shown in Figure 6.
- the application data is added to the read-write layer
- the process of obtaining the image file of the application program may include: obtain the attribute information of the application data, and filter in the read-write layer according to the basic information of the read-write layer
- the read-write layer that matches the attribute information of the application data is used as the target read-write layer
- the application data is added to the target read-write layer
- the basic image file with the added application data is used as the image file of the application.
- the specific scheme can be as follows:
- Create a Dockerfile text that includes the commands and instructions required to build the image file. For example, specify a specific basic image text. In this embodiment, it can be specified as the basic image file of the Android operating system, and through COPY or The ADD command adds the application data corresponding to the application to the Android basic image file. With the help of this file, the image file of the application with the specified name can be generated. It should be noted that in this process, it is necessary to ensure that the attributes and permissions of the file remain unchanged. In the embodiment, other methods may also be used to merge the basic image file and the application data to obtain the image file of the application program.
- commands such as "docker run/docker cp/docker export" can also be used to synthesize the image to obtain the image file of the application.
- the image file generation method may also include:
- the updated basic image file is obtained, the read-write layer is added to the read-only layer of the updated basic image file, and the application data corresponding to the application is added to the read-write layer to obtain the application's First update the image file.
- the updated basic image file is obtained, and the basic information of the read-write layer that needs to be added to the updated basic image file is determined according to the application data.
- the read-write layer corresponding to the basic information is added to the read-only layer of the file, and the application data is added to the read-write layer according to the basic information to obtain the first updated image file of the application.
- the updated basic image file when the basic image file is updated, can also be reloaded, the application is reinstalled or updated in the system container, and candidate application data of the application is obtained, and the updated basic image file Combine with the application data to obtain the first update image file of the application.
- the method of merging the updated basic image file and the application data of the previously obtained application program can speed up the generation of the first update image file of the application program.
- the image file generation method may also include:
- the updated application installation file when there is an update to the application installation file, can be obtained.
- the updated application installation file can be directly obtained, or the storage address of the updated application installation file can be obtained first, and then the updated application installation file can be obtained according to the storage address.
- the image file of the application program can be loaded on the operating system, and a read-write layer can be added to the image file of the application program.
- the loaded image file can be defined as a read-only layer, and then one or more read-write layers are superimposed on the read-only layer. At this time, the image file in the system container can be modified.
- the mirror main directory of the host may contain the mirror file of the application program.
- the data in the mirror file of the application program is modified at the read-write layer. Therefore, as long as the read-write layer of the image file of the application changes, it can be determined that the application data corresponding to the application has been updated. Therefore, the monitoring of the application data corresponding to the application can be completed at the read-write layer, which can also be understood as The update process of the application data corresponding to the application can be monitored through the read-write layer.
- the updated application data can be extracted as the update data of the application. For example, after the update of the application program is completed, it is determined that there is a change in the read-write layer, at this time, it can be determined that the application program has been updated. Then, create an update data set in the system container, and execute the script file in the update data set directory. Subsequently, by traversing the read-write layer directory of the mirror file of the application under the mirror file directory, the update data can be obtained, and the update data can be saved to the update data set.
- create a Dockerfile text that includes the commands and instructions required to construct the second update image file, for example, specify a specific
- the basic mirroring text can be specified as the mirroring file of the application in this embodiment, and the target update data can be added to the mirroring file of the application through the COPY or ADD command. With the help of this file, the mirroring of the application with the specified name can be generated document. It should be noted that in this process, it is necessary to ensure that the attributes and permissions of the file remain unchanged. In the embodiment, other methods may also be used to merge the mirror file of the application program and the target update data to obtain the second updated mirror file after the application program is updated.
- the mirror file, the first update mirror file, and the second update mirror file of the application program may also be stored using a blockchain.
- Blockchain is a new application model of computer technology including distributed data storage, point-to-point transmission, consensus mechanism, and encryption algorithm.
- Blockchain is essentially a decentralized database. It is a series of data blocks associated with cryptographic methods. Each data block contains a batch of network transaction information for verification. The validity of the information (anti-counterfeiting) and the generation of the next block.
- the blockchain can include the underlying platform of the blockchain, the platform product service layer, and the application service layer.
- the basic service module For a new business request, the basic service module first performs adaptation analysis and authentication processing on the interface (interface adaptation), and then encrypts the business information through a consensus algorithm (consensus management), and then transmits the business information to the Share the account book (network communication), and record storage.
- the smart contract module is responsible for contract registration and issuance as well as contract triggering and contract execution. Developers can define contract logic through a certain programming language, publish it on the blockchain (contract registration), and call keys or other events according to the logic of contract terms Trigger execution, complete the contract logic, and also provide the function of contract upgrade and cancellation.
- the operation monitoring module is mainly responsible for the deployment during product release, configuration modification, contract settings, cloud adaptation, and visual output of real-time status during product operation, such as alarms, monitoring network conditions, and monitoring node equipment health status.
- the image file device is integrated in an electronic device, the electronic device is a server, and the preset system area is a system container as an example for description.
- the server before running the application to obtain the system data collection and the attribute information of the application, the server can also configure the installed application, that is, in the step "run the application, obtain the system data after running the application"
- the image file generation method may also include: the server queries the application installation file for the configuration information used to configure the application, and when the configuration information exists, the application is processed according to the configuration information. Configuration. After the configuration is completed, run the configured application on the operating system to obtain the system data collection and the attribute information of the application after the configured application is run, which can be specifically as follows:
- the server queries the configuration information used to configure the application in the application installation file.
- the server may use the file name or file format of the data update information or the preset parameter information as the query condition to query whether there is configuration information for configuring the application in the application installation file.
- the picture frame number in the application program is set to the preset picture frame number.
- the configuration information is data update information and preset parameter information
- the built-in data corresponding to the data update information in the application program is updated, and the parameters corresponding to the preset parameter information in the updated application program are set.
- the server obtains the global root directory in the system container, and uses this global root directory as the global directory of the system data collection.
- the directories corresponding to the attribute information are filtered out in the global catalog, for example, the file directories corresponding to the name of the application, and these directories are used as target directories.
- identify the initial application data after the application is installed in the system data set and get the initial application data set. For example, you can filter out candidate system data corresponding to the target directory in the system data set, and in these candidate system data Identify the initial application data corresponding to the application, and save the initial application data in the initial application data collection.
- Step 205 The server adjusts the initial application data to obtain application data corresponding to the application program.
- the server may mount the previous directory (for example, /home/workin) of the host to the container directory (for example, /workin) of the system container, and the data corresponding to the container directory may be the initial application data collection.
- the data corresponding to the previous directory of the host may be the first shared data set.
- the first shared data set can share the initial application data with the initial application data set.
- the abnormal data and configuration data can be identified in the application data according to the first preset identification condition, and the abnormal data generated during the operation of the application can be deleted in the first shared data set.
- the abnormal data can be Including temporary data in the running of the application and data irrelevant to the application.
- the temporary data that needs to be deleted can be related files in directories such as "/mnt/runtime/read”, “/mnt/runtime/write”, and "/storage/emulated”.
- the package name of the data package can also be used as the query condition.
- the package name of the data package can be "com.tenxxx.tmgp.sgame”
- the target configuration data can be queried from all the configuration data.
- the target configuration data You can keep the target configuration data for the relevant fields and other data in files such as "/data/system/packages.xml” and “/data/system/packages.list”, and change or delete other configuration data.
- the configuration data of some applications can also be changed. For example, when creating a mirror file, some icons need to be displayed for the user to click. After the creation is completed, these icons need to be hidden (for example, QQ, WeChat, etc.) The icon of the application program), so the corresponding configuration file needs to be changed to adjust the status of the corresponding icon, and the application data corresponding to the application program can be obtained by deleting and changing the configuration data.
- Step 206 The server merges the application data with the basic image file to generate an image file of the application program.
- the server creates a Dockerfile text, which includes commands and instructions required to build an image file, for example, specifying a specific basic image text, which can be designated as the basic image of the Android operating system in this embodiment File, and the application data corresponding to the application is added to the Android base image file through the COPY or ADD command.
- the image file of the application with the specified name can be generated. It should be noted that in this process, it is necessary to ensure that the attributes and permissions of the file remain unchanged. In the embodiment, other methods may also be used to merge the basic image file and the application data to obtain the image file of the application program.
- the image file generation method may also include:
- the server obtains the updated basic image file, adds a read-write layer to the read-only layer of the updated basic image file, and adds the application data corresponding to the application to the read-write layer to obtain the application The first update image file.
- the server when the basic image file is updated, the server obtains the updated basic image file, and according to the application data, determines the basic information of the read-write layer that needs to be added to the updated basic image file.
- the read-write layer corresponding to the basic information is added to the read-only layer of the mirror file, and the application data is added to the read-write layer according to the basic information to obtain the first updated mirror file of the application.
- the image file generation method may also include:
- the server obtains the updated application installation file, updates the application on the operating system according to the updated application installation file, and monitors the application data corresponding to the application.
- the updated application data is extracted as the update data of the application, and the update data is merged with the mirror file of the application to obtain the second update mirror file after the application is updated.
- the server may directly obtain the updated application installation file, and may first obtain the storage address of the updated application installation file, and then obtain the updated application installation file according to the storage address.
- the image file of the application program can be loaded on the operating system of the system container, and the image file loaded in the system container can be defined as a read-only layer, and then one or more read-write layers are superimposed on the read-only layer .
- the application can be updated.
- the mirror main directory of the host may contain the mirror file of the application program.
- the data in the mirror file of the application program is modified or changed at the read-write layer. Therefore, as long as the read-write layer of the image file of the application changes, it can be determined that the application data corresponding to the application has been updated. Therefore, the monitoring of the application data corresponding to the application can be completed at the read-write layer, which can also be understood as The update process of the application data corresponding to the application can be monitored through the read-write layer. To monitor the update process of application data, you can also customize the file monitoring program inside the system container to monitor it.
- an update data set when there is an update to the application data, an update data set can be created in the system container, and the script file in the update data set directory can be executed. Then, by traversing the read-write layer directory of the mirror file of the application under the mirror file directory, the update data can be obtained, and the update data can be saved to the update data collection.
- the second shared data set may be constructed in an area other than the system container where the operating system is located, so that the second shared data set and the update data set can share the data content of the update data.
- abnormal data and configuration data in the update data can be identified. In the second shared data set, the abnormal data generated during the operation of the updated application can be deleted.
- the abnormal data can include part of the temporary data generated during the operation of the application and data that is not related to the application.
- the data that needs to be deleted Temporary data can be related files in "/mnt/runtime/read”, “/mnt/runtime/write”, "/storage/emulated” and other directories.
- the package name of the data package can also be used as the query condition.
- the package name of the data package can be "com.tenxxx.tmgp.sgame”
- the target configuration data is queried from all the configuration data.
- the configuration data can be related fields and other data in files such as "/data/system/packages.xml", “/data/system/packages.list”, etc.
- the target configuration data is retained, and other configuration data is changed or deleted .
- the target update data determine the information of the read-write layer that needs to be added to the mirror file, superimpose the read-write layer on the mirror file, and then add the target update file to the read-write layer of the mirror file, and you can get the first update of the application program. 2.
- the specific merging process of the target update data and the image file of the application can be constructed using a Dockerfile. For example, create a Dockerfile text that includes the commands and instructions required to construct the second update image file, for example, specify a specific
- the basic mirroring text can be specified as the mirroring file of the application in this embodiment, and the target update data can be added to the mirroring file of the application through the COPY or ADD command. With the help of this file, the mirroring of the application with the specified name can be generated document. It should be noted that in this process, it is necessary to ensure that the attributes and permissions of the file remain unchanged.
- other methods may also be used to merge the mirror file of the application program and the target update data to obtain the second updated mirror file after the application program is updated.
- the application installation file In the case where there is an update of the application installation file, it can also be understood that the application needs to be updated.
- the update data in the application data can be obtained, and the update data and the mirror file of the application can be merged to obtain the second update mirror file of the application.
- the cloud game system includes a mirror server, an edge server, and a user terminal, where the user terminal can be a mobile phone, a tablet computer, and/or a TV, as shown in FIG. 10.
- the image file generating device is integrated in the image server, and the user can access the cloud game application in the edge server through the terminal.
- the mirror server After the mirror server receives the image file generation request carrying the cloud game installation file, according to the image file generation request, loads the basic image file of the operating system in the preset system area to start the operating system; then, installs the cloud game installation file in the operating system Corresponding cloud game, and run the cloud game to obtain the system data collection after running the cloud game and the attribute information of the cloud game; according to the attribute information of the cloud game, filter out the game data corresponding to the cloud game in the system data collection, and put the game The data is merged with the basic image file to generate a cloud game image file, that is, a cloud game image.
- the edge server allocates a system container corresponding to the updated cloud game image file to connect to the client, so that the user terminal can operate the cloud game through the client. This simplifies the steps of game update.
- the embodiment of the present application also provides an image file generating device, which can be integrated in an electronic device, such as a server or a terminal.
- the terminal can include a tablet computer or a laptop computer. And/or personal computer, etc.
- the receiving unit 301 may be specifically configured to receive a mirror file generation request, and extract the application installation file from the mirror file generation request.
- the memory of the application installation file is large or there are multiple application installation files, these application installation files can also be obtained indirectly.
- the filtering unit 304 is configured to filter out the application data corresponding to the application in the system data collection according to the attribute information of the application.
- the filtering unit 304 may be specifically configured to traverse the system data set according to the attribute information of the application to obtain the initial application data after the application is installed, adjust the initial application data, and obtain the application data corresponding to the application.
- the filtering unit 304 can be specifically used to obtain the global catalog of the system data collection; filter out the target catalog in the global catalog according to the attribute information of the application; based on the target catalog, identify the application installation in the system data collection After the initial application data, the initial application data set is obtained.
- the filtering unit 304 may be specifically configured to identify abnormal data and configuration data in the application data according to the first preset identification condition; delete the abnormal data in the initial application data in the first shared data set, And change the configuration data in the initial application data to obtain the application data corresponding to the application.
- the generating unit 305 is used to merge the application data with the basic image file to generate the image file of the application program.
- the second update unit 307 may be specifically configured to obtain an updated application installation file when there is an update to the application installation file, and perform an update on the application on the operating system according to the updated application installation file. Update and monitor the application data corresponding to the application. When the application data is updated, the updated application data is extracted as the update data of the application, and the update data is merged with the mirror file of the application to obtain the updated application data. 2. Update the image file.
- the second update unit 307 may be specifically used to construct a second shared data set in an area other than the operating system, so that the second shared data set shares data content with the update data; according to the second preset identification condition, in the first 2. Identify the abnormal data and configuration data in the update data in the shared data set; delete the abnormal data in the update data in the second shared data set, and change the configuration data in the update data to obtain the target update data; The target update data is merged with the mirror file of the application program to obtain the second update mirror file after the application program is updated.
- the processor 401 is the control center of the electronic device. It uses various interfaces and lines to connect various parts of the entire electronic device. Execute various functions of electronic equipment and process data, so as to monitor the electronic equipment as a whole.
- the processor 401 may include one or more processing cores.
- the processor 401 may integrate an application processor and a modem processor. Among them, the application processor mainly deals with the operating system, user interface, and application programs, and the modem processor mainly deals with wireless communication. It can be understood that the foregoing modem processor may not be integrated into the processor 401.
- this solution installs and runs the application on the operating system to obtain the system data collection, the application data corresponding to the application is filtered out in the system data collection, and the application data and the basic image file are combined to generate the image file of the application.
- the memory size of the image file of the application is greatly reduced, thereby saving storage resources.
- the image file of the application program generated by the embodiment of the present application does not contain data or temporary data irrelevant to the application program, the processing resources of the device deploying the application program can be saved, and the deployment time of the application program can be greatly reduced.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
Claims (16)
- 一种镜像文件生成方法,包括:接收镜像文件生成请求,所述镜像文件生成请求携带应用程序安装文件;根据所述镜像文件生成请求,在预设系统区域加载操作系统的基础镜像文件,以启动操作系统;在所述操作系统中安装所述应用程序安装文件对应的应用程序,并运行所述应用程序,得到运行所述应用程序后的系统数据集合和所述应用程序的属性信息;根据所述应用程序的属性信息,在所述系统数据集合中筛选出所述应用程序对应的应用数据;将所述应用数据与所述基础镜像文件进行合并,以生成所述应用程序的镜像文件。
- 根据权利要求1所述的方法,其中,所述基础镜像文件包括一个只读层,所述将所述应用数据与所述基础镜像文件进行合并,以生成所述应用程序的镜像文件,包括:根据所述应用数据,确定所述基础镜像文件需要增加的读写层的基本信息;在所述基础镜像文件的只读层上增加所述基本信息对应的读写层;根据所述基本信息,将所述应用数据添加至所述读写层,得到所述应用程序的镜像文件。
- 根据权利要求2所述的方法,其中,所述根据所述基本信息,将所述应用数据添加至所述读写层,得到所述应用程序的镜像文件,包括:获取所述应用数据的属性信息;根据所述读写层的基本信息,在所述读写层中筛选出与所述应用数据的属性信息相匹配的读写层作为目标读写层;将所述应用数据添加至所述目标读写层,将添加了所述应用数据的基础镜像文件作为所述应用程序的镜像文件。
- 根据权利要求1所述的方法,其中,所述根据所述应用程序的属性信息,在所述系统数据集合中筛选出所述应用程序对应的应用数据,包括:根据所述应用程序的属性信息,遍历所述系统数据集合,得到所述应用程序安装后的初始应用数据;对所述初始应用数据进行调整,得到所述应用程序对应的应用数据。
- 根据权利要求4所述的方法,其中,所述根据所述应用程序的属性信息,遍历所述系统数据集合,得到所述应用程序安装后的初始应用数据,包括:获取所述系统数据集合的全局目录;根据所述应用程序的属性信息,在所述全局目录中筛选出目标目录;基于所述目标目录,在所述系统数据集合中识别出所述应用程序安装后的初始应用数据,得到初始应用数据集合。
- 根据权利要求5所述的方法,其中,所述对所述初始应用数据进行调整,得到所述应用程序对应的应用数据,包括:在操作系统以外的区域构建第一共享数据集合,使得所述第一共享数据集合与所述初始应用数据集合共享所述初始应用数据;在所述第一共享数据集合内对所述应用数据进行调整,得到所述应用程序对应的应用数据。
- 根据权利要求6所述的方法,其中,所述在所述第一共享数据集合内对所述应用数据进行调整,得到所述应用程序对应的应用数据,包括:根据第一预设识别条件,在所述应用数据内识别出异常数据和配置数据;在所述第一共享数据集合内对所述初始应用数据中的异常数据进行删除,并对所述初始应用数据中的配置数据进行更改,得到所述应用程序对应的应用数据。
- 根据权利要求1所述的方法,其中,在运行所述应用程序,得到运行所述应用程序后的系统数据集合和所述应用程序的属性信息之前,还包括:在所述应用程序安装文件中查询用于配置所述应用程序的配置信息;当存在所述配置信息时,根据所述配置信息,对所述应用程序进行配置;所述运行所述应用程序,得到运行所述应用程序后的系统数据集合和所述应用程序的属性信息,包括:在所述操作系统上运行配置后的应用程序,得到运行所述配置后的应用程序后的系统数据集合和所述应用程序的属性信息。
- 根据权利要求8所述的方法,其中,所述配置信息包括数据更新信息和/或预设参数信息,所述当存在所述配置信息时,根据所述配置信息,对所述应用程序进行配置,包括:当所述配置信息为数据更新信息时,对所述应用程序中所述数据更新信息对应的内置数据进行更 新;当所述配置信息为预设参数信息时,对所述应用程序中所述预设参数信息对应的参数进行设置;当所述配置信息为所述数据更新信息和预设参数信息时,对所述应用程序中所述数据更新信息对应的内置数据进行更新,并对更新后的应用程序中所述预设参数信息对应的参数进行设置。
- 根据权利要求1所述的方法,其中,还包括:当所述基础镜像文件存在更新时,获取更新后的基础镜像文件;在所述更新后的基础镜像文件的只读层上增加读写层;将所述应用程序对应的应用数据添加至所述读写层,得到所述应用程序的第一更新镜像文件。
- 根据权利要求1所述的方法,其中,还包括:当所述应用程序安装文件存在更新时,获取更新后的应用程序安装文件;根据所述更新后的应用程序安装文件,在所述操作系统上对所述应用程序进行更新,并监控所述应用程序对应的应用数据;当所述应用数据存在更新时,提取出更新的应用数据作为所述应用程序的更新数据;将所述更新数据与所述应用程序的镜像文件进行合并,得到所述应用程序更新后的第二更新镜像文件。
- 根据权利要求11所述的方法,其中,所述根据所述更新后应用程序安装文件,在所述操作系统对所述应用程序进行更新,并监控所述应用程序对应的应用数据,包括:在所述操作系统上加载所述应用程序的镜像文件,并在所述应用程序的镜像文件上增加读写层;根据所述更新后的应用程序安装文件,在所述操作系统上对所述应用程序进行更新,并通过所述读写层,在所述应用程序的更新过程中对所述应用程序对应的应用数据进行监控。
- 根据权利要求12所述的方法,其中,所述将所述更新数据与所述应用程序的镜像文件进行合并,得到所述应用程序更新后的第二更新镜像文件,包括:在所述操作系统以外的区域构建第二共享数据集合,使得所述第二共享数据集合与所述更新数据共享数据内容;根据第二预设识别条件,在所述第二共享数据集合中识别出所述更新数据中的异常数据和配置数据;在所述第二共享数据集合内对所述更新数据中的异常数据进行删除,并对所述更新数据中的配置数据进行更改,得到目标更新数据;将所述目标更新数据与所述应用程序的镜像文件进行合并,得到所述应用程序更新后的第二更新镜像文件。
- 一种镜像文件生成装置,包括:接收单元,用于接收镜像文件生成请求,所述镜像文件生成请求携带应用程序安装文件;启动单元,用于根据所述镜像文件生成请求,在预设系统区域加载操作系统的基础镜像文件,以启动操作系统;运行单元,用于在所述操作系统中安装所述应用程序安装文件对应的应用程序,并运行所述应用程序,得到运行所述应用程序后的系统数据集合和所述应用程序的属性信息;筛选单元,用于根据所述应用程序的属性信息,在所述系统数据集合中筛选出所述应用程序对应的应用数据;生成单元,用于将所述应用数据与所述基础镜像文件进行合并,以生成所述应用程序的镜像文件。
- 一种电子设备,包括处理器和存储器,所述存储器存储有多条程序指令,所述处理器用于运行所述存储器内的程序指令,以执行权利要求1至13任一项所述的镜像文件生成方法。
- 一种计算机可读存储介质,其中,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至13任一项所述的镜像文件生成方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022555627A JP7493053B2 (ja) | 2020-06-22 | 2021-05-24 | イメージファイル生成方法、装置及びコンピュータプログラム |
EP21828491.7A EP4033349A4 (en) | 2020-06-22 | 2021-05-24 | METHOD AND APPARATUS FOR GENERATION OF A MIRROR IMAGE FILE AND COMPUTER READABLE STORAGE MEDIUM |
KR1020227017844A KR102702525B1 (ko) | 2020-06-22 | 2021-05-24 | 미러 이미지 파일을 생성하는 방법 및 장치, 그리고 컴퓨터로 판독 가능한 저장 매체 |
US17/749,911 US11995453B2 (en) | 2020-06-22 | 2022-05-20 | Method and apparatus for generating image file and computer-readable storage medium |
US18/643,599 US20240272915A1 (en) | 2020-06-22 | 2024-04-23 | Method and apparatus for generating image file and computer-readable storage medium |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010571984.4 | 2020-06-22 | ||
CN202010571984.4A CN111596932B (zh) | 2020-06-22 | 2020-06-22 | 一种镜像文件生成方法、装置和计算机可读存储介质 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/749,911 Continuation US11995453B2 (en) | 2020-06-22 | 2022-05-20 | Method and apparatus for generating image file and computer-readable storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021258951A1 true WO2021258951A1 (zh) | 2021-12-30 |
Family
ID=72185749
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/095410 WO2021258951A1 (zh) | 2020-06-22 | 2021-05-24 | 一种镜像文件生成方法、装置和计算机可读存储介质 |
Country Status (6)
Country | Link |
---|---|
US (2) | US11995453B2 (zh) |
EP (1) | EP4033349A4 (zh) |
JP (1) | JP7493053B2 (zh) |
KR (1) | KR102702525B1 (zh) |
CN (1) | CN111596932B (zh) |
WO (1) | WO2021258951A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111596932B (zh) * | 2020-06-22 | 2021-03-02 | 腾讯科技(深圳)有限公司 | 一种镜像文件生成方法、装置和计算机可读存储介质 |
CN112947949B (zh) * | 2020-09-22 | 2024-07-23 | 深圳市明源云科技有限公司 | 应用程序安装方法、装置及电子设备 |
CN112044079B (zh) * | 2020-10-14 | 2023-02-07 | 腾讯科技(深圳)有限公司 | 一种游戏运行方法、装置、存储介质和电子设备 |
CN112463165B (zh) * | 2021-02-03 | 2021-06-04 | 北京并行科技股份有限公司 | 一种程序镜像构建方法、系统、计算设备及可读存储介质 |
CN113094178A (zh) * | 2021-04-23 | 2021-07-09 | 北京字节跳动网络技术有限公司 | 内存镜像文件生成方法、装置、电子设备和存储介质 |
CN117807102B (zh) * | 2024-02-29 | 2024-07-09 | 卓世智星(天津)科技有限公司 | 一种数据驱动的数据库更新方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160077855A1 (en) * | 2013-05-06 | 2016-03-17 | China Unionpay Co., Ltd. | Stateless virtual machine in cloud computing environment and application thereof |
CN108984268A (zh) * | 2018-07-13 | 2018-12-11 | 郑州云海信息技术有限公司 | Docker系统中容器管理的方法和装置 |
CN109391688A (zh) * | 2018-09-29 | 2019-02-26 | 郑州云海信息技术有限公司 | 云计算系统中镜像文件的获取方法和装置 |
CN111596932A (zh) * | 2020-06-22 | 2020-08-28 | 腾讯科技(深圳)有限公司 | 一种镜像文件生成方法、装置和计算机可读存储介质 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030236927A1 (en) * | 2002-06-19 | 2003-12-25 | Christophe Cleraux | Tool for building multiple OS images |
JP2009187247A (ja) | 2008-02-06 | 2009-08-20 | Yokogawa Electric Corp | イメージファイル配布システム及びイメージファイル配布方法 |
US8533701B2 (en) * | 2010-03-15 | 2013-09-10 | Microsoft Corporation | Virtual machine image update service |
CN105760201B (zh) | 2016-02-29 | 2019-05-28 | 华为技术有限公司 | 一种嵌入式装置的启动方法和装置 |
WO2018020610A1 (ja) * | 2016-07-27 | 2018-02-01 | 株式会社オプティム | コンテナイメージ配信システム、コンテナイメージ配信方法及びプログラム |
US10235222B2 (en) | 2017-01-05 | 2019-03-19 | Portworx, Inc. | Containerized application system graph driver |
CN106843976B (zh) * | 2017-01-25 | 2018-11-16 | 北京百度网讯科技有限公司 | 用于生成镜像文件的方法和装置 |
CN109729121B (zh) | 2017-10-31 | 2022-05-06 | 阿里巴巴集团控股有限公司 | 一种云存储系统及用于云存储系统中实现自定义数据处理的方法 |
JP6958726B2 (ja) | 2018-03-23 | 2021-11-02 | 日本電気株式会社 | アプリケーション実行装置、アプリケーション実行方法、およびプログラム |
CN110058867B (zh) * | 2019-04-29 | 2023-07-18 | 深圳市网心科技有限公司 | 应用程序镜像打包、安装方法及计算机装置、存储介质 |
CN111124598B (zh) * | 2019-10-18 | 2024-05-28 | 西安雷风电子科技有限公司 | 一种虚拟桌面软件管理方法及系统 |
US11960870B2 (en) * | 2022-02-23 | 2024-04-16 | International Business Machines Corporation | Container image management |
-
2020
- 2020-06-22 CN CN202010571984.4A patent/CN111596932B/zh active Active
-
2021
- 2021-05-24 WO PCT/CN2021/095410 patent/WO2021258951A1/zh unknown
- 2021-05-24 KR KR1020227017844A patent/KR102702525B1/ko active IP Right Grant
- 2021-05-24 JP JP2022555627A patent/JP7493053B2/ja active Active
- 2021-05-24 EP EP21828491.7A patent/EP4033349A4/en active Pending
-
2022
- 2022-05-20 US US17/749,911 patent/US11995453B2/en active Active
-
2024
- 2024-04-23 US US18/643,599 patent/US20240272915A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160077855A1 (en) * | 2013-05-06 | 2016-03-17 | China Unionpay Co., Ltd. | Stateless virtual machine in cloud computing environment and application thereof |
CN108984268A (zh) * | 2018-07-13 | 2018-12-11 | 郑州云海信息技术有限公司 | Docker系统中容器管理的方法和装置 |
CN109391688A (zh) * | 2018-09-29 | 2019-02-26 | 郑州云海信息技术有限公司 | 云计算系统中镜像文件的获取方法和装置 |
CN111596932A (zh) * | 2020-06-22 | 2020-08-28 | 腾讯科技(深圳)有限公司 | 一种镜像文件生成方法、装置和计算机可读存储介质 |
Non-Patent Citations (2)
Title |
---|
LI YILUN, HONG SONG, DACHENG WANG, JIANXIN WANG: "Research on Image Management Mechanism Based on Application Hierarchical Technology", JISUANJI-YINGYONG-YU-RUANJIAN : SHUANGYUEKAN COMPUTER APPLICATIONS AND SOFTWARE, SHANGHAI : SHANGHAISHI JISUAN JISHU YANJIUSUO, CN, vol. 35, no. 2, 1 February 2018 (2018-02-01), CN , pages 22 - 29, XP055884590, ISSN: 1000-386X * |
See also references of EP4033349A4 |
Also Published As
Publication number | Publication date |
---|---|
EP4033349A4 (en) | 2023-01-18 |
JP7493053B2 (ja) | 2024-05-30 |
US11995453B2 (en) | 2024-05-28 |
KR102702525B1 (ko) | 2024-09-04 |
KR20220083838A (ko) | 2022-06-20 |
CN111596932B (zh) | 2021-03-02 |
CN111596932A (zh) | 2020-08-28 |
EP4033349A1 (en) | 2022-07-27 |
US20240272915A1 (en) | 2024-08-15 |
JP2023520847A (ja) | 2023-05-22 |
US20220276878A1 (en) | 2022-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021258951A1 (zh) | 一种镜像文件生成方法、装置和计算机可读存储介质 | |
US11907254B2 (en) | Provisioning and managing replicated data instances | |
US11848982B2 (en) | Access services in hybrid cloud computing systems | |
US10977226B2 (en) | Self-service configuration for data environment | |
CN109479062B (zh) | 混合云计算系统中的使用跟踪 | |
US11962599B2 (en) | Techniques for automatically configuring minimal cloud service access rights for container applications | |
CN106991035A (zh) | 一种基于微服务架构的主机监控系统 | |
US20150067167A1 (en) | Hot pluggable extensions for access management system | |
CN113168345A (zh) | 云服务的流线型安全部署 | |
CN105765533A (zh) | 用于固件虚拟化的方法和装置 | |
CN107438067A (zh) | 一种基于mesos容器云平台的多租户构建方法及系统 | |
CN109271211A (zh) | 应用程序的分身方法、装置、设备和介质 | |
CN113971191A (zh) | 一种数据导入方法、装置和计算机可读存储介质 | |
CN112099879B (zh) | 配置信息管理方法、装置、计算机设备及存储介质 | |
CN114070856A (zh) | 数据处理方法、装置、系统、运维审计设备和存储介质 | |
JP2017151647A (ja) | 管理システム、制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21828491 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2021828491 Country of ref document: EP Effective date: 20220419 |
|
ENP | Entry into the national phase |
Ref document number: 20227017844 Country of ref document: KR Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 2022555627 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |