WO2021258951A1 - 一种镜像文件生成方法、装置和计算机可读存储介质 - Google Patents

一种镜像文件生成方法、装置和计算机可读存储介质 Download PDF

Info

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
Application number
PCT/CN2021/095410
Other languages
English (en)
French (fr)
Inventor
赵新达
许敏华
邵梦超
杨锦隆
刘海洋
Original Assignee
腾讯科技(深圳)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 腾讯科技(深圳)有限公司 filed Critical 腾讯科技(深圳)有限公司
Priority to JP2022555627A priority Critical patent/JP7493053B2/ja
Priority to EP21828491.7A priority patent/EP4033349A4/en
Priority to KR1020227017844A priority patent/KR102702525B1/ko
Publication of WO2021258951A1 publication Critical patent/WO2021258951A1/zh
Priority to US17/749,911 priority patent/US11995453B2/en
Priority to US18/643,599 priority patent/US20240272915A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

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

一种镜像文件生成方法、装置和计算机可读存储介质,该方法包括:接收镜像文件生成请求(101),该镜像文件生成请求携带应用程序安装文件;根据镜像文件生成请求,在预设系统区域加载操作系统的基础镜像文件,以启动操作系统(102);在操作系统中安装应用程序安装文件对应的应用程序,并运行应用程序,得到运行应用程序后的系统数据集合和应用程序的属性信息(103);根据应用程序的属性信息,在系统数据集合中筛选出应用程序对应的应用数据(104);将应用数据与基础镜像文件进行合并,以生成应用程序的镜像文件(105)。

Description

一种镜像文件生成方法、装置和计算机可读存储介质
本申请要求于2020年6月22日提交中国专利局、申请号为202010571984.4、名称为“一种镜像文件生成方法、装置和计算机可读存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信技术领域,具体涉及一种镜像文件生成方法、装置和计算机可读存储介质。
背景技术
近年来,随着云技术的飞速发展,越来越多的应用程序可以进行云启动。应用程序通过云技术进行部署往往需要获取包含该应用程序的镜像文件,通过加载镜像文件,就可以部署应用程序。因此,就需要提前制作或者生成应用程序的镜像文件。而现有的镜像文件生成方法往往是通过加载基础镜像文件来启动操作系统,然后,直接在操作系统上安装或更新应用程序,将安装或更新应用程序后的系统数据集合直接保存为应用程序的镜像文件。
然而,将系统数据集合直接保存为应用程序的镜像文件时,应用程序的镜像文件中会包含一些与应用程序无关的数据或部分临时数据,导致镜像文件的内存较大,从而占用较多的存储资源。而且,因为设备在部署该应用程序时需要额外读取和处理与应用程序无关的数据或临时数据,这会占用设备较多的处理资源,并使得部署该应用程序的时间大大延长。
发明内容
本申请实施例提供一种镜像文件生成方法、装置和计算机可读存储介质。可以节省存储资源,节省部署应用程序的设备的处理资源,并减少应用程序的部署时间。
在一些实施例中,一种镜像文件生成方法,包括:
接收镜像文件生成请求,所述镜像文件生成请求携带应用程序安装文件;
根据所述镜像文件生成请求,在预设系统区域加载操作系统的基础镜像文件,以启动操作系统;
在所述操作系统中安装所述应用程序安装文件对应的应用程序,并运行所述应用程序,得到运行所述应用程序后的系统数据集合和所述应用程序的属性信息;
根据所述应用程序的属性信息,在所述系统数据集合中筛选出所述应用程序对应的应用数据;
将所述应用数据与所述基础镜像文件进行合并,以生成所述应用程序的镜像文件。
在一些实施例中,本申请实施例提供一种镜像文件生成装置,包括:
接收单元,用于接收镜像文件生成请求,所述镜像文件生成请求携带应用程序安装文件;
启动单元,用于根据所述镜像文件生成请求,在预设系统区域加载操作系统的基础镜像文件,以启动操作系统;
运行单元,用于在所述操作系统中安装所述应用程序安装文件对应的应用程序,并运行所述应用程序,得到运行所述应用程序后的系统数据集合和所述应用程序的属性信息;
筛选单元,用于根据所述应用程序的属性信息,在所述系统数据集合中筛选出所述应用程序对应的应用数据;
生成单元,用于将所述应用数据与所述基础镜像文件进行合并,以生成所述应用程序的镜像文件。
此外,本申请实施例还提供一种电子设备,包括处理器和存储器,所述存储器存储有多条程序指令,所述处理器用于运行所述存储器内的程序指令,以执行本申请实施例提供的镜像文件生成方法。
此外,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本申请实施例所提供的任一种镜像文件生成方法中的步骤。
附图简要说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不 付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的镜像文件生成方法的场景示意图;
图2是本申请实施例提供的镜像文件生成方法的流程示意图;
图3是本申请实施例提供的应用程序安装和运行的流程示意图;
图4是本申请实施例提供的识别出初始应用数据的示意图;
图5是本申请实施例提供的对初始应用数据进行调整的示意图;
图6是本申请实施例提供的生成应用程序的镜像文件的示意图;
图7是本申请实施例提供的叠加读写层后的镜像文件的示意图;
图8是本申请实施例提供的对更新数据进行调整的示意图;
图9是本申请实施例提供的镜像文件生成方法的另一流程示意图;
图10是本申请实施例提供的云游戏系统的结构示意图;
图11是本申请实施例提供的云游戏页面的示意图;
图12是本申请实施例提供的镜像文件生成装置的结构示意图;
图13是本申请实施例提供的镜像文件生成装置的另一结构示意图;
图14是本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种镜像文件生成方法、装置和计算机可读存储介质。其中,该镜像文件生成装置可以集成在电子设备中,该电子设备可以是服务器,也可以是终端等设备。
所谓镜像文件,是指将特定的一系列文件按照一定的格式制作成的单一的文件,以方便用户下载和使用,例如可以为一种通过镜像这种文件存储方式得到的存储的文件。在云应用程序中,用户可以通过应用程序的镜像文件直接打开和运行该应用程序,而无需在通过硬件构建运行环境后再安装应用程序,可以大大加快应用程序的部署时间,还可以降低运行该应用程序所需的硬件配置。
其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、网络加速服务、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
例如,参见图1,以镜像文件生成装置集成在电子设备中为例,电子设备在接收镜像文件生成请求后,该镜像文件生成请求携带应用程序安装文件,根据镜像文件生成请求,在预设系统区域加载操作系统的基础镜像文件,以启动操作系统,然后,在操作系统中安装应用程序安装文件对应的应用程序,并运行应用程序,得到运行应用程序后的系统数据集合和应用程序的属性信息,根据应用程序的属性信息,在系统数据集合中筛选出应用程序对应的应用数据,将应用数据与基础镜像文件进行合并,以生成应用程序的镜像文件。
其中,预设系统区域可以为云平台中的系统容器。云平台也称为云计算平台,用于基于硬件资源和软件资源的服务,提供计算、网络和存储能力。云计算(cloud computing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。
作为云计算的基础能力提供商,会建立云计算资源池(简称云平台,一般称为IaaS(Infrastructure as a Service,基础设施即服务),在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。
按照逻辑功能划分,在IaaS层上可以部署PaaS(Platform as a Service,平台即服务)层,PaaS层之上再部署SaaS(Software as a Service,软件即服务)层,也可以直接将SaaS部署在IaaS上。PaaS为软件运行的平台,如数据库、web容器等。SaaS为各式各样的业务软件,如web门户网站、短信群发器等。一般来说,SaaS和PaaS相对于IaaS是上层。
以下分别对本申请实施例进行详细说明。需要说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。
本实施例将从镜像文件生成装置的角度进行描述,该镜像文件生成装置具体可以集成在电子设备 中,该电子设备可以是服务器,也可以是终端等设备。其中,该终端可以包括平板电脑、笔记本电脑、以及个人计算机(PC,Personal Computer)、可穿戴设备、虚拟现实设备或其他可以生成镜像文件的智能设备。
本申请实施例提供一种镜像文件生成方法,由电子设备执行。如图2所示,该镜像文件生成方法的具体流程包括如下步骤101-105:
步骤101、接收镜像文件生成请求。
其中,镜像文件生成请求携带应用程序安装文件。应用程序安装文件可以为安装应用程序所需要的安装文件,该安装文件可以包括编译的代码文件、资源文件和证书文件等。针对不同的操作系统,应用程序安装文件的格式可以不同,以Android操作系统为例,应用程序安装文件可以为Android应用程序包(Android application package,APK),即APK文件。
在实施例中,可以直接接收镜像文件生成请求。比如,终端可以直接将应用程序安装文件添加至镜像文件生成请求,然后,将添加应用程序安装文件的镜像文件生成请求发送至镜像文件生成装置,镜像文件生成装置直接接收镜像文件生成请求,并从镜像文件生成请求中提取出应用程序安装文件。当应用程序安装文件的内存较大或者存在多个应用程序的安装文件时,还可以间接获取这些应用程序安装文件。比如,终端可以将应用程序安装文件存储在第三方数据库中,然后,将存储地址添加至镜像文件生成请求,并将添加了存储地址的镜像文件生成请求发送至镜像文件生成装置,镜像文件生成装置从镜像文件生成请求中提取出存储地址,然后,根据存储地址从第三方数据库中获取应用程序安装文件,在获取到应用程序安装文件之后还可以向终端发送提示信息以提示终端。
步骤102、根据镜像文件生成请求,在预设系统区域加载操作系统的基础镜像文件,以启动操作系统。
其中,操作系统可以是运行在预设系统区域内的操作系统,该预设系统区域可以为有硬件支撑的实体操作系统中通过隔离机制运行的系统容器,比如,运行Android操作系统的容器就可以称为Android容器,每一个服务器或云服务器中可以包括多个Android容器。多个操作系统可以运行在系统容器中,运行在系统容器中的多个操作系统可以相互保持独立。
其中,基础镜像文件可以为只包含操作系统的镜像文件。因此,加载该镜像文件就可以启动操作系统。
在实施例中,以操作系统为Android操作系统为例,当接收到镜像文件生成请求时,在Android容器中加载Android操作系统的Android基础镜像文件,此时,就可以在Android容器内启动Android操作系统。
步骤103、在操作系统中安装应用程序安装文件对应的应用程序,并运行应用程序,得到运行应用程序后的系统数据集合和应用程序的属性信息。
例如,在操作系统中运行应用程序安装文件,将应用程序安装文件对应的应用程序安装在操作系统中。比如,以应用程序安装文件为A应用程序的APK文件为例,在Android操作系统中通过手动命令或者脚本安装的方式,运行该APK文件,将A应用程序安装至Android操作系统中。在操作系统中运行应用程序,得到运行应用程序后的系统数据集合和应用程序的属性信息。比如,在Android操作系统中运行安装好的应用程序,此时,将Android容器中的整个数据进行保存,得到系统数据集合,并在Android操作系统中获取应用程序的属性信息,该属性信息可以为应用程序的名称、类型、安装地址、内存大小和数据列表等信息。
在实施例中,在运行应用程序,得到系统数据集合和应用程序的属性信息之前,还可以对安装好的应用程序进行配置,即在步骤“运行应用程序,得到运行应用程序后的系统数据集合和应用程序的属性信息”之前,该镜像文件生成方法还可以包括:在应用程序安装文件中查询用于配置应用程序的配置信息,当存在配置信息时,根据配置信息,对应用程序进行配置,配置完成后,在操作系统上运行配置后的应用程序,得到运行配置后的应用程序后的系统数据集合和应用程序的属性信息,具体可以如下:
(1)在应用程序安装文件中查询用于配置应用程序的配置信息。
其中,配置信息可以包括数据更新信息和/或预设参数信息。数据更新信息可以为对应用程序内的部分或全部资源数据进行更新的信息,比如,以云游戏为例,资源数据可以为游戏里需要加载的地图或场景等资源数据,数据更新信息可以为更新的资源数据,也可以为更新的资源数据的存储地址,根据存储地址,获取到更新的资源数据,然后在云游戏应用程序内对原来的资源数据进行更新。预设参数信息可以为用户通过终端预设的一些操作或者设置参数,比如,还是以应用程序为云游戏为例,预设参数信息可以为用户通过终端预设的画面帧数、常用的游戏操作参数和/或其他参数信息。
在实施例中,可以将数据更新信息或预设参数信息的文件名或者文件格式作为查询条件,在应用程序安装文件中查询是否存在用于配置应用程序的配置信息。
(2)当存在配置信息时,根据配置信息,对应用程序进行配置。
例如,当存在配置信息时,根据具体存在的配置信息的情况,对应用程序进行配置。在实施例中,当配置信息为数据更新信息时,对应用程序中的数据更新信息对应的内置数据进行更新。例如,当数据更新信息为更新数据时,在应用程序中查询到更新数据对应的内置数据,直接将内置数据替换为更新数据,具体的更新过程可以通过手动点击或者人工智能自动识别等方法进行触发。当数据更新信息为更新数据的存储地址时,可以根据该存储地址,获取更新数据,然后,在应用程序中查询到更新数据对应的内置数据,将内置数据替换为更新数据。在另一实施例中,当配置信息为预设参数信息时,对应用程序中预设参数信息对应的参数进行设置。例如,以预设参数信息为预设画面帧数为例,直接在应用程序的帧数设置中,将应用程序中的画面帧数设置为预设画面帧数。还比如,当配置信息为数据更新信息和预设参数信息时,对应用程序中数据更新信息对应的内置数据进行更新,并对更新后的应用程序中预设参数信息对应的参数进行设置。例如,当配置信息中既存在数据更新信息又存在预设参数信息时,可以先判断数据更新信息是否包含更新数据,如果包含更新数据,可以直接在应用程序中对更新数据对应的内置数据进行替换,得到更新后的应用程序。如果数据更新信息中只有存储地址,则先根据存储地址获取更新数据,然后再对更新数据对应的内置数据进行替换,得到更新后的应用程序。在更新后的应用程序中对预设参数信息对应的参数进行设置。
在实施例中,当存在配置信息时,才需要对应用程序进行配置,配置完成后,再运行配置后的应用程序,得到运行配置后的应用程序后的系统数据集合和应用程序的属性信息。如果不存在配置信息,就可以直接在应用程序安装完成后运行该应用程序,然后,得到运行应用程序后的系统数据集合和应用程序的属性信息。对于安装和运行应用程序,得到系统数据集合和应用程序的属性信息的具体过程可以如图3所示。
步骤104、根据应用程序的属性信息,在系统数据集合中筛选出应用程序对应的应用数据。
其中,应用数据可以为与应用程序相关的数据,比如,可以为支撑应用程序运行的数据。以应用程序为XX云游戏为例,应用数据可以为XX云游戏中的游戏数据。
在实施例中,根据应用程序的属性信息,在系统数据集合中筛选出应用程序对应的应用数据具体可以包括如下步骤S1-S2:
步骤S1、根据应用程序的属性信息,遍历系统数据集合,得到应用程序安装后的初始应用数据。
在实施例中,步骤S1可以包括:获取系统数据集合的全局目录,比如,获取系统容器内的全局根目录,将这个全局根目录作为系统数据集合的全局目录。步骤S1可以进一步包括:根据应用程序的属性信息,在全局目录中筛选出目标目录,比如,根据应用程序的属性信息,在全局目录中筛选出属性信息对应的目录,例如,应用程序的名称对应的文件目录,将这些目录作为目标目录。步骤S1可以进一步包括:基于目标目录,在系统数据集合中识别出应用程序安装后的初始应用数据,得到初始应用数据集合,比如,可以在系统数据集合中筛选出目标目录对应的候选系统数据,在这些候选系统数据中识别出应用程序对应的初始应用数据,如图4所示,并将初始应用数据保存至初始应用数据集合中。
步骤S2、对初始应用数据进行调整,得到应用程序对应的应用数据。
在实施例中,可以在操作系统以外的区域构建第一共享数据集合,使得第一共享数据集合与初始应用数据集合共享初始应用数据。比如,可以将主机的上一个目录(譬如,/home/workin)挂载至系统容器的容器目录(譬如,/workin)下,该容器目录对应的数据可以为初始应用数据集合,主机的上一个目录对应的数据就可以为第一共享数据集合。这样就可以使得第一共享数据集合可以与初始应用数据集合共享初始应用数据。在实施例中,在第一共享数据集合内对初始应用数据进行调整,得到应用程序对应的应用数据,如图5所示。在实施例中,可以根据第一预设识别条件,在应用数据内识别出异常数据和配置数据。还可以通过abd命令或其他方式对初始应用数据进行传递和修改。在实施例中,还可以在第一共享数据集合内对初始应用数据中的异常数据进行删除,并对初始应用数据中的配置数据进行更改。例如,可以删除初始应用程序中的异常数据,异常数据可以包括应用程序运行中的部分临时数据和与应用程序不相关的数据,其中需要删除的临时数据可以为“/mnt/runtime/read”、“/mnt/runtime/write”、“/storage/emulated”等目录下的相关文件。又例如,还可以将数据包的包名作为查询条件,比如数据包的包名可以为"com.tenxxx.tmgp.sgame",在全部的配置数据中查询出目标配置数据,该目标配置数据可以为“/data/system/packages.xml”、“/data/system/packages.list”等文件中的相关字段等数据,保留该目标配置数据,而将其他的配置数据进行更改或者删除。这样做的目的主要是为了保留尽可能少的应用程序的相关数据,减少与基础镜像文件的耦合性。在实施例中,还可以对一些应用程序在Android桌面系统的图标显示进行更改,譬如,制作镜像文件的时候,需要显示部分图标供用户点击,在制作完成后,需要隐藏这部分图标(譬如,QQ、微信等应用程序的图标),因此需要更改相应配置文件来调整相应图标的状态,通过删除和更改配置数据就可以得到应用程序对应的应用数据。
在本申请实施例中,在删除和更改初始应用数据的过程中,需要保证文件的属性和权限保持不变。
步骤105、将应用数据与基础镜像文件进行合并,以生成应用程序的镜像文件。
其中,基础镜像文件至少包括一个只读层,只读层顾名思义只能对其上的数据进行读取,但不能对数据进行修改。在基础镜像文件上可以增加读写层,读写层与只读层的最大区别就是读写层的数据不但可以读取还能进行修改。
在实施例中,可以根据应用数据,确定基础镜像文件需要增加的读写层的基本信息,比如,根据应用数据的数据大小和数据类型,可以确定读写层的数量、读写层的内存大小、读写层的位置和读写层的类型等基本信息。在基础镜像文件的只读层上增加基本信息对应的读写层,比如,在基础镜像文件的只读层的特定位置上增加读写层类型、数量和内存大小对应的读写层。根据基本信息,将应用数据添加至读写层,得到应用程序的镜像文件,如图6所示。在实施例中,根据基本信息,将应用数据添加至读写层,得到应用程序的镜像文件的过程可以包括:获取应用数据的属性信息,根据读写层的基本信息,在读写层中筛选出与应用数据的属性信息相匹配的读写层作为目标读写层,将应用数据添加至目标读写层,将添加了应用数据的基础镜像文件作为应用程序的镜像文件。例如,可以采用Dockerfile(用于构建镜像文件的文本文件)来构建应用程序的镜像文件,具体方案可以如下:
创建一个Dockerfile文本,在该文本中包括构建镜像文件所需的命令和说明,比如,指定一个具体的基础镜像文本,在本实施例中可以指定为Android操作系统的基础镜像文件,以及通过COPY或者ADD命令将应用程序对应的应用数据添加到Android基础镜像文件中,借助该文件,可以生成指定名称的应用程序的镜像文件。需要注意的是,在这个过程中,一定要保证文件的属性和权限保持不变。在实施例中,也可以采用其他方式将基础镜像文件和应用数据进行合并,得到应用程序的镜像文件。
在实施例中,对于合成应用程序的镜像文件来说,还可以采用“docker run/docker cp/docker export”等命令进行镜像的合成,得到应用程序的镜像文件。
在实施例中,将应用程序的镜像文件部署在镜像文件运行的服务器上之后,在操作系统的一些组件升级、输入法改变以及修复运行时的漏洞等情况下,使得基础镜像文件需要更新,在这种情况下,也需要对应用程序的镜像文件进行更新。因此,该镜像文件生成方法还可以包括:
当基础镜像文件存在更新时,获取更新后的基础镜像文件,在更新后的基础镜像文件的只读层上增加读写层,将应用程序对应的应用数据添加至读写层,得到应用程序的第一更新镜像文件。
在实施例中,当基础镜像文件存在更新时,获取更新后的基础镜像文件,根据应用数据,确定需要在更新后的基础镜像文件上增加的读写层的基本信息,在更新后的基础镜像文件的只读层上增加基本信息对应的读写层,根据基本信息,将应用数据添加至读写层,得到应用程序的第一更新镜像文件。
在实施例中,当基础镜像文件存在更新时,也可以重新加载更新后的基础镜像文件,在系统容器中重新安装或更新应用程序,得到应用程序的候选应用数据,将更新后的基础镜像文件和应用数据进行合并,得到应用程序的第一更新镜像文件。但是,采用将更新的基础镜像文件和之前得到的应用程序的应用数据进行合并的方法,可以加快应用程序的第一更新镜像文件的生成。
在实施例中,将应用程序的镜像文件部署在镜像文件运行的服务器上之后,当应用程序存在更新时,也就意味着应用程序的安装文件也存在更新,此时,需要对应用程序进行更新。因此,该镜像文件生成方法还可以包括:
当应用程序安装文件存在更新时,获取更新后的应用程序安装文件,根据更新后的应用程序安装文件,在操作系统上对应用程序进行更新,并监控应用程序对应的应用数据,当应用数据存在更新时,提取出更新的应用数据作为应用程序的更新数据,将更新数据与应用程序的镜像文件进行合并,得到应用程序更新后的第二更新镜像文件。
在实施例中,当应用程序安装文件存在更新时,可以获取更新后的应用程序安装文件。比如,可以直接获取更新后的应用程序安装文件,还可以先获取更新后的应用程序安装文件的存储地址,然后,再根据存储地址获取更新后的应用程序安装文件。在实施例中,可以在操作系统上加载应用程序的镜像文件,并在应用程序的镜像文件上增加读写层,比如,在系统容器的操作系统上加载应用程序的镜像文件,在系统容器中加载的镜像文件可以被定义为只读层,然后在只读层上叠加一个或多个读写层,此时,可以对系统容器中的镜像文件进行修改。如果在镜像文件的只读层中存在相同的文件,会先将镜像文件的只读层中的文件复制到镜像文件的读写层,之后对复制的文件进行修改,这样就可以保证不对只读层的文件进行修改而只对读写层的文件进行修改,如图7所示。在这种情况下,就可以动态记录应用程序的镜像文件的变化或改变。在实施例中,根据更新后的应用程序安装文件,在操作系统上对应用程序进行更新,并通过读写层,在应用程序更新过程中对应用程序对应的应用数据进行监控。比如,在操作系统上加载更新后的应用程序安装文件,就可以对应用程序进行更新。在更新过程中,可以将主机的镜像主目录挂载至系统容器中作为镜像文件目录。主机的镜像主目录中可以包含应用程序的镜像文件,在更新应用程序的过程中,在读写层对应用程序的镜像文件中的数据进行修改。因此,只要应用程序的镜像文件的读写层发生变化,就可以确定应用程序对应的应用数据存在更新,所以,对应用程序对应的应用数据的监控就可以在读写层完成,也可以理解为可以通过读写层,对应用程序对应的应用数据的更新过 程进行监控。对应用数据的更新过程进行监控还可以在系统容器内部自定义文件监控程序对其进行监控。
在实施例中,当应用数据存在更新时,可以提取出更新的应用数据作为应用程序的更新数据。比如,当应用程序更新完成之后,确定读写层存在变化,此时,就可以认定应用程序进行了更新。然后,在系统容器中创建更新数据集合,并执行更新数据集合目录下的脚本文件。随后,遍历镜像文件目录下的应用程序的镜像文件的读写层目录,就可以获取更新数据,并将更新数据保存至更新数据集合。在实施例中,可以在操作系统所在的系统容器以外的区域构建第二共享数据集合,使得第二共享数据集合与更新数据集合共享更新数据的数据内容。比如,可以在操作系统存在的系统容器以外的区域构建第二共享数据集合,使得第二共享数据集合与更新数据集合可以共享更新数据的数据内容。在实施例中,可以根据第二预设识别条件,在第二共享数据集合中识别出更新数据中的异常数据和配置数据。比如,对第二共享数据集合中的更新数据进行解析,可以识别出更新数据中的异常数据和配置数据。在第二共享数据集合中对更新数据中的异常数据进行删除,并对更新数据中的配置数据进行更改,得到目标更新数据。比如,异常数据可以为应用程序运行过程中产生的部分临时数据和与应用程序不相关的数据,可以删除这部分临时数据和与应用程序不相关的数据。需要删除的临时数据可以为“/mnt/runtime/read”、“/mnt/runtime/write”、“/storage/emulated”等目录下的相关文件。在实施例中,还可以将数据包的包名作为查询条件,比如,数据包的包名可以为"com.tenxxx.tmgp.sgame",在全部的配置数据中查询出目标配置数据,该目标配置数据可以为“/data/system/packages.xml”、“/data/system/packages.list”等文件中的相关字段等数据,保留该目标配置数据,而将其他的配置数据进行更改或者删除。在实施例中,还可以对一些更新后的应用程序内的配置数据进行更改,譬如,制作镜像文件的时候,需要显示部分图标供用户点击,在制作完成后,需要隐藏这部分图标(譬如,QQ、微信等应用程序的图标),因此需要更改相应配置文件来调整相应图标的状态,通过删除或更改配置数据就可以得到目标更新数据,如图8所示。将目标更新数据与应用程序的镜像文件进行合并,得到应用程序更新后的第二更新镜像文件。在实施例中,可以根据目标更新数据,确定镜像文件需要增加的读写层的信息,在镜像文件上叠加读写层,然后,将目标更新文件添加至镜像文件的读写层,就可以得到应用程序更新后的第二更新镜像文件。目标更新数据与应用程序的镜像文件的具体合并过程可以采用Dockerfile来构建,譬如,创建一个Dockerfile文本,在该文本中包括构建第二更新镜像文件所需的命令和说明,比如,指定一个具体的基础镜像文本,在本实施例中可以指定为应用程序的镜像文件,以及通过COPY或者ADD命令将目标更新据添加到应用程序的镜像文件中,借助该文件,可以生成指定名称的应用程序的镜像文件。需要注意的是,在这个过程中,一定要保证文件的属性和权限保持不变。在实施例中,也可以采用其他方式将应用程序的镜像文件和目标更新数据进行合并,得到应用程序更新后的第二更新镜像文件。
对于应用程序安装文件存在更新的情况,也可以理解为应用程序需要更新。针对应用程序需要更新,可以加载基础镜像文件,启动操作系统,在操作系统中重新安装更新后的应用程序安装文件,然后,再获取更新后的应用程序的应用数据,将应用数据和基础镜像文件进行合并,也可以得到应用程序的第二更新镜像文件。但是,为了缩短应用程序的部署时间,可以获取应用数据中的更新数据,将更新数据与应用程序的镜像文件进行合并,得到应用程序的第二更新镜像文件。
在实施例中,还可以将应用程序的镜像文件、第一更新镜像文件和第二更新镜像文件采用区块链进行存储。区块链是包括分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain)本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,其中每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理模块、基础服务模块、智能合约模块以及运营监控模块等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计)。基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上。对于一个新的业务请求,基础服务模块先对接口进行适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后将业务信息完整地传输至共享账本上(网络通信),并进行记录存储。智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能。运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如,告警、监控网络情况、监控节点设备健康状态等。
平台产品服务层提供典型应用的基本能力和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。应用服务层提供基于区块链方案的应用服务给业务参与方进行 使用。
根据上面实施例所描述的方法,以下将对本申请实施例作进一步详细说明。
在实施例中,将以该镜像文件装置集成在电子设备,电子设备为服务器,预设系统区域为系统容器为例进行说明。
如图9所示,一种镜像文件生成方法具体流程包括如下步骤201-206:
步骤201、服务器接收镜像文件生成请求。
在实施例中,终端可以直接将应用程序安装文件添加至镜像文件生成请求,然后,将添加了应用程序安装文件的镜像文件生成请求发送至服务器。服务器可以接收镜像文件生成请求,并在镜像文件生成请求中获取应用程序安装文件。当应用程序安装文件的内存较大时,终端可以将应用程序安装文件存储在第三方数据库中,然后,将存储地址添加至镜像文件生成请求,并将添加了存储地址的镜像文件生成请求发送至服务器。服务器从镜像文件生成请求中提取出存储地址,然后,根据存储地址从第三方数据库中获取应用程序安装文件,在获取到应用程序安装文件之后还可以向终端发送提示信息以提示终端。
步骤202、服务器根据镜像文件生成请求,在系统容器加载操作系统的基础镜像文件,以启动操作系统。
在实施例中,以操作系统为Android操作系统为例,当服务器接收到镜像文件生成请求时,在Android容器中加载Android操作系统的Android基础镜像文件,此时,就可以在Android容器内启动Android操作系统。
步骤203、服务器在操作系统中安装应用程序安装文件对应的应用程序,并运行应用程序,得到运行应用程序后的系统数据集合和应用程序的属性信息。
例如,以应用程序安装文件为A应用程序的APK文件为例,服务器在Android操作系统中通过手动命令或者脚本安装的方式,运行该APK文件,将A应用程序安装至Android操作系统中。在操作系统中运行应用程序,得到运行应用程序后的系统数据集合和应用程序的属性信息。比如,在Android操作系统中运行安装好的应用程序,此时,将Android容器中的整个数据进行保存,得到系统数据集合,并在Android操作系统中获取应用程序的属性信息,该属性信息可以为应用程序的名称、类型、安装地址、内存大小和数据列表等信息。
在实施例中,在运行应用程序,得到系统数据集合和应用程序的属性信息之前,服务器还可以对安装好的应用程序进行配置,即在步骤“运行应用程序,得到运行应用程序后的系统数据集合和应用程序的属性信息”之前,该镜像文件生成方法还可以包括:服务器在应用程序安装文件中查询用于配置应用程序的配置信息,当存在配置信息时,根据配置信息,对应用程序进行配置,配置完成后,在操作系统上运行配置后的应用程序,得到运行配置后的应用程序后的系统数据集合和应用程序的属性信息,具体可以如下:
(1)服务器在应用程序安装文件中查询用于配置应用程序的配置信息。
在实施例中,服务器可以将数据更新信息或预设参数信息的文件名或者文件格式作为查询条件,在应用程序安装文件中查询是否存在用于配置应用程序的配置信息。
(2)当存在配置信息时,服务器根据配置信息,对应用程序进行配置。
在实施例中,当配置信息为数据更新信息时,服务器对应用程序中的数据更新信息对应的内置数据进行更新。例如,当数据更新信息为更新数据时,在应用程序中查询到更新数据对应的内置数据,直接将内置数据替换为更新数据,具体的更新过程可以通过手动点击或者人工智能自动识别等方法进行触发。当数据更新信息为更新数据的存储地址时,可以根据该存储地址,获取更新数据,然后,在应用程序中查询到更新数据对应的内置数据,将内置数据替换为更新数据。在另一实施例中,当配置信息为预设参数信息时,对应用程序中预设参数信息对应的参数进行设置。例如,以预设参数信息为预设画面帧数为例,直接在应用程序的帧数设置中,将应用程序中的画面帧数设置为预设画面帧数。还比如,当配置信息为数据更新信息和预设参数信息时,对应用程序中数据更新信息对应的内置数据进行更新,并对更新后的应用程序中预设参数信息对应的参数进行设置。例如,当配置信息中既存在数据更新信息又存在预设参数信息时,可以先判断数据更新信息是否包含更新数据,如果包含更新数据,可以直接在应用程序中对更新数据对应的内置数据进行替换,得到更新后的应用程序。如果数据更新信息中只有存储地址,则先根据存储地址获取更新数据,然后再对更新数据对应的内置数据进行替换,得到更新后的应用程序。在更新后的应用程序中对预设参数信息对应的参数进行设置。
步骤204、服务器根据应用程序的属性信息,遍历系统数据集合,得到应用程序安装后的初始应用数据。
在实施例中,服务器获取系统容器内的全局根目录,将这个全局根目录作为系统数据集合的全局目录。根据应用程序的属性信息,在全局目录中筛选出属性信息对应的目录,比如,应用程序的名称对应的文件目录,将这些目录作为目标目录。基于目标目录,在系统数据集合中识别出应用程序安装后的 初始应用数据,得到初始应用数据集合,比如,可以在系统数据集合中筛选出目标目录对应的候选系统数据,在这些候选系统数据中识别出应用程序对应的初始应用数据,并将初始应用数据保存至初始应用数据集合中。
步骤205、服务器对初始应用数据进行调整,得到应用程序对应的应用数据。
在实施例中,服务器可以将主机的上一个目录(譬如,/home/workin)挂载至系统容器的容器目录(譬如,/workin)下,该容器目录对应的数据可以为初始应用数据集合,主机的上一个目录对应的数据就可以为第一共享数据集合。这样就可以使得第一共享数据集合可以与初始应用数据集合共享初始应用数据。在实施例中,可以根据第一预设识别条件,在应用数据内识别出异常数据和配置数据,并可以在第一共享数据集合内删除应用程序运行过程中产生的异常数据,该异常数据可以包括应用程序运行中的临时数据和应用程序不相关的数据。例如,需要删除的临时数据可以为“/mnt/runtime/read”、“/mnt/runtime/write”、“/storage/emulated”等目录下的相关文件。又例如,还可以将数据包的包名作为查询条件,比如,数据包的包名可以为"com.tenxxx.tmgp.sgame",在全部的配置数据中查询出目标配置数据,该目标配置数据可以为“/data/system/packages.xml”、“/data/system/packages.list”等文件中的相关字段等数据,保留该目标配置数据,而将其他的配置数据进行更改或者删除。这样做的目的主要是为了保留尽可能少的应用程序的相关数据,减少与基础镜像文件的耦合性。在实施例中,还可以对一些应用程序的配置数据进行更改,譬如,制作镜像文件的时候,需要显示部分图标供用户点击,在制作完成后,需要隐藏这部分图标(譬如,QQ、微信等应用程序的图标),因此需要更改相应配置文件来调整相应图标的状态,通过删除和更改配置数据就可以得到应用程序对应的应用数据。
步骤206、服务器将应用数据与基础镜像文件进行合并,以生成应用程序的镜像文件。
在实施例中,服务器创建一个Dockerfile文本,在该文本中包括构建镜像文件所需的命令和说明,比如,指定一个具体的基础镜像文本,在本实施例中可以指定为Android操作系统的基础镜像文件,以及通过COPY或者ADD命令将应用程序对应的应用数据添加到Android基础镜像文件中,借助该文件,可以生成指定名称的应用程序的镜像文件。需要注意的是,在这个过程中,一定要保证文件的属性和权限保持不变。在实施例中,也可以采用其他方式将基础镜像文件和应用数据进行合并,得到应用程序的镜像文件。
在实施例中,对于合成应用程序的镜像文件来说,还可以采用“docker run/docker cp/docker export”等命令进行镜像的合成,得到应用程序的镜像文件。
在实施例中,将应用程序的镜像文件部署在镜像文件运行的服务器上之后,在操作系统的一些组件升级、输入法改变以及修复运行时的漏洞等情况下,使得基础镜像文件需要更新,在这种情况下,也需要对应用程序的镜像文件进行更新。因此,该镜像文件生成方法还可以包括:
当基础镜像文件存在更新时,服务器获取更新后的基础镜像文件,在更新后的基础镜像文件的只读层上增加读写层,将应用程序对应的应用数据添加至读写层,得到应用程序的第一更新镜像文件。
在实施例中,当基础镜像文件存在更新时,服务器获取更新后的基础镜像文件,根据应用数据,确定需要在更新后的基础镜像文件上增加的读写层的基本信息,在更新后的基础镜像文件的只读层上增加基本信息对应的读写层,根据基本信息,将应用数据添加至读写层,得到应用程序的第一更新镜像文件。
在实施例中,将应用程序的镜像文件部署在镜像文件运行的服务器上之后,当应用程序存在更新时,也就意味着应用程序的安装文件也存在更新,此时,需要对应用程序进行更新。因此,该镜像文件生成方法还可以包括:
当应用程序安装文件存在更新时,服务器获取更新后的应用程序安装文件,根据更新后的应用程序安装文件,在操作系统上对应用程序进行更新,并监控应用程序对应的应用数据,当应用数据存在更新时,提取出更新的应用数据作为应用程序的更新数据,将更新数据与应用程序的镜像文件进行合并,得到应用程序更新后的第二更新镜像文件。
在实施例中,服务器可以直接获取更新后的应用程序安装文件,还可以先获取更新后的应用程序安装文件的存储地址,然后,再根据存储地址获取更新后的应用程序安装文件。在实施例中,可以在系统容器的操作系统上加载应用程序的镜像文件,在系统容器中加载的镜像文件可以被定义为只读层,然后在只读层上叠加一个或多个读写层。在操作系统上加载更新后的应用程序安装文件,就可以对应用程序进行更新。在更新过程中,可以将主机的镜像主目录挂载至系统容器中作为镜像文件目录。主机的镜像主目录中可以包含应用程序的镜像文件,在更新应用程序的过程中,在读写层对应用程序的镜像文件中的数据进行修改或者改动。因此,只要应用程序的镜像文件的读写层发生变化,就可以确定应用程序对应的应用数据存在更新,所以,对应用程序对应的应用数据的监控就可以在读写层完成,也可以理解为可以通过读写层,对应用程序对应的应用数据的更新过程进行监控。对应用数据的更新过程进行监控还可以在系统容器内部自定义文件监控程序对其进行监控。
在实施例中,当应用数据存在更新时,可以在系统容器中创建更新数据集合,并执行更新数据集合目录下的脚本文件。然后,遍历镜像文件目录下的应用程序的镜像文件的读写层目录,就可以获取更新数据,并将更新数据保存至更新数据集合。在实施例中,可以在操作系统所在的系统容器以外的区域构建第二共享数据集合,使得第二共享数据集合与更新数据集合可以共享更新数据的数据内容。在实施例中,对第二共享数据集合中的更新数据进行解析,可以识别出更新数据中的异常数据和配置数据。在第二共享数据集合中可以删除更新后的应用程序在运行过程中产生的异常数据,异常数据可以包括应用程序运行中产生的部分临时数据和与应用程序不相关的数据,其中,需要删除的临时数据可以为“/mnt/runtime/read”、“/mnt/runtime/write”、“/storage/emulated”等目录下的相关文件。在实施例中,还可以将数据包的包名作为查询条件,比如,数据包的包名可以为"com.tenxxx.tmgp.sgame",在全部的配置数据中查询出目标配置数据,该目标配置数据可以为“/data/system/packages.xml”、“/data/system/packages.list”等文件中的相关字段等数据,保留该目标配置数据,而将其他的配置数据进行更改或者删除。在实施例中,还可以对一些更新后的应用程序内的配置数据进行更改,譬如,制作镜像文件的时候,需要显示部分图标供用户点击,在制作完成后,需要隐藏这部分图标(譬如,QQ、微信等应用程序的图标),因此需要更改相应配置文件来调整相应图标的状态,通过删除或更改配置数据就可以得到目标更新数据。根据目标更新数据,确定镜像文件需要增加的读写层的信息,在镜像文件上叠加读写层,然后,将目标更新文件添加至镜像文件的读写层,就可以得到应用程序更新后的第二更新镜像文件。目标更新数据与应用程序的镜像文件的具体合并过程可以采用Dockerfile来构建,譬如,创建一个Dockerfile文本,在该文本中包括构建第二更新镜像文件所需的命令和说明,比如,指定一个具体的基础镜像文本,在本实施例中可以指定为应用程序的镜像文件,以及通过COPY或者ADD命令将目标更新据添加到应用程序的镜像文件中,借助该文件,可以生成指定名称的应用程序的镜像文件。需要注意的是,在这个过程中,一定要保证文件的属性和权限保持不变。在实施例中,也可以采用其他方式将应用程序的镜像文件和目标更新数据进行合并,得到应用程序更新后的第二更新镜像文件。
对于应用程序安装文件存在更新的情况,也可以理解为应用程序需要更新。针对应用程序需要更新,可以加载基础镜像文件,启动操作系统,在操作系统中重新安装更新后的应用程序安装文件,然后,再获取更新后的应用程序的应用数据,将应用数据和基础镜像文件进行合并,也可以得到应用程序的第二更新镜像文件。但是,为了缩短应用程序的部署时间,可以获取应用数据中的更新数据,将更新数据与应用程序的镜像文件进行合并,得到应用程序的第二更新镜像文件。
根据上面实施例所描述的方法,以下将对本申请实施例作进一步详细说明。
在实施例中,将以该镜像文件生成方法应用在云游戏系统中为例进行说明。该云游戏系统包括镜像服务器、边缘服务器和用户终端,其中用户终端可以是手机、平板电脑和/或电视等,如图10所示。镜像文件生成装置集成在镜像服务器中,用户可以通过终端访问边缘服务器中的云游戏应用。
镜像服务器接收携带云游戏安装文件的镜像文件生成请求后,根据镜像文件生成请求,在预设系统区域加载操作系统的基础镜像文件,以启动操作系统;然后,在操作系统中安装云游戏安装文件对应的云游戏,并运行该云游戏,得到运行云游戏后的系统数据集合和云游戏的属性信息;根据云游戏的属性信息,在系统数据集合中筛选出云游戏对应的游戏数据,将游戏数据与基础镜像文件进行合并,以生成云游戏的镜像文件,即云游戏镜像。镜像服务器将云游戏镜像部署至边缘服务器,边缘服务器启动该云游戏镜像对应的系统容器,使得云游戏镜像部署至系统容器中。比如,该系统容器可以为Android容器。当用户通过用户终端的客户端访问云游戏时,用户终端向边缘服务器发送客户端连接请求,客户端连接请求中携带云游戏标识。边缘服务器根据云游戏标识,分配与该云游戏标识相对应的系统容器与客户端建立连接,此时用户终端就通过云游戏镜像进入到该云游戏中。用户终端的客户端通过数据流的方式将输入事件(譬如,鼠标和键盘事件等)发送给相对应的系统容器,系统容器负责抓拍相应的缓冲区图像发送给客户端。比如,以系统容器为Android容器为例,用户终端的客户端通过数据流的方式将鼠标和键盘事件等输入时间发送给相对应的Android容器,Android容器负责抓拍相应的缓冲区图像发送给客户端,客户端就可以显示用户在云游戏中的与输入时间对应的反馈图像,如图11所示。其中,当云游戏的基础镜像文件存在更新时,只需要将更新后的基础镜像文件与云游戏的游戏数据进行合并,得到云游戏的第一更新镜像文件,然后,将第一更新镜像文件重新部署至边缘服务器中相对应的系统容器中即可。当云游戏在运行中存在更新,即云游戏的安装文件存在更新时,只需要获取云游戏的更新数据,将更新数据与云游戏的镜像文件进行合并,得到云游戏的第二更新镜像文件,然后,将第二更新镜像文件重新部署至边缘服务器中相对应的系统容器中即可。当用户终端发送客户端连接请求时,边缘服务器分配与更新后的云游戏的镜像文件对应的系统容器与客户端进行连接,实现用户终端通过客户端对云游戏进行操作。这样就可以简化游戏更新的步骤。
为了更好地实施以上方法,本申请实施例还提供了一种镜像文件生成装置,该镜像文件生成装置可以集成在电子设备,比如服务器或终端等设备中,该终端可以包括平板电脑、笔记本电脑和/或个人 计算机等。
例如,如图12所示,该镜像文件生成装置可以包括接收单元301、启动单元302、运行单元303、筛选单元304和生成单元305,具体如下:
(1)接收单元301
接收单元301,用于接收镜像文件生成请求,该镜像文件生成请求携带应用程序安装文件。
在实施例中,接收单元301具体可以用于接收镜像文件生成请求,并从镜像文件生成请求中提取出应用程序安装文件。当应用程序安装文件的内存较大或者存在多个应用程序的安装文件时,还可以间接获取这些应用程序安装文件。
(2)启动单元302
启动单元302,用于根据镜像文件生成请求,在预设系统区域加载操作系统的基础镜像文件,以启动操作系统。
在实施例中,启动单元302具体可以用于根据镜像文件生成请求,在系统容器内加载操作系统的基础镜像文件,以在系统容器内启动操作系统。
(3)运行单元303
运行单元303,用于在操作系统中安装应用程序安装文件对应的应用程序,并运行应用程序,得到运行应用程序后的系统数据集和和应用程序的属性信息。
在实施例中,运行单元303具体可以用于在操作系统中加载应用程序安装文件,将应用程序安装文件对应的应用程序安装在操作系统中,并在操作系统中运行应用程序,得到运行应用程序后的系统数据集合和应用程序的属性信息。
在实施例中,运行单元303具体可以用于在应用程序安装文件中查询用于配置应用程序的配置信息;当存在配置信息时,根据配置信息,对应用程序进行配置;其中,运行应用程序,得到运行应用程序后的系统数据集合和应用程序的属性信息包括:在操作系统上运行配置后的应用程序,得到运行配置后的应用程序后的系统数据集合和应用程序的属性信息。
在实施例中,运行单元303具体可以用于当配置信息为数据更新信息时,对应用程序中数据更新信息对应的内置数据进行更新;当配置信息为预设参数信息时,对应用程序中预设参数信息对应的参数进行设置;当配置信息为数据更新信息和预设参数信息时,对应用程序中数据更新信息对应的内置数据进行更新,并对更新后的应用程序中预设参数信息对应的参数进行设置。
(4)筛选单元304
筛选单元304,用于根据应用程序的属性信息,在系统数据集合中筛选出应用程序对应的应用数据。
在实施例中,筛选单元304具体可以用于根据应用程序的属性信息,遍历系统数据集合,得到应用程序安装后的初始应用数据,对初始应用数据进行调整,得到应用程序对应的应用数据。
在实施例中,筛选单元304具体可以用于获取系统数据集合的全局目录;根据应用程序的属性信息,在全局目录中筛选出目标目录;基于目标目录,在系统数据集合中识别出应用程序安装后的初始应用数据,得到初始应用数据集合。
在实施例中,筛选单元304具体可以用于在操作系统以外的区域构建第一共享数据集合,使得第一共享数据集合与初始应用数据集合共享初始应用数据;在第一共享数据集合内对应用数据进行调整,得到应用程序对应的应用数据。
在实施例中,筛选单元304具体可以用于根据第一预设识别条件,在应用数据内识别出异常数据和配置数据;在第一共享数据集合内对初始应用数据中的异常数据进行删除,并对初始应用数据中的配置数据进行更改,得到应用程序对应的应用数据。
(5)生成单元305
生成单元305,用于将应用数据与基础镜像文件进行合并,以生成应用程序的镜像文件。
在实施例中,生成单元305具体可以用于根据应用数据,确定基础镜像文件需要增加的读写层的基本信息,在基础镜像文件的只读层上增加基本信息对应的读写层,根据基本信息,将应用数据添加至读写层,得到应用程序的镜像文件。
在实施例中,生成单元305具体可以用于获取所述应用数据的属性信息;根据读写层的基本信息,在读写层中筛选出与应用数据的属性信息相匹配的读写层作为目标读写层;将应用数据添加至目标读写层,将添加了应用数据的基础镜像文件作为应用程序的镜像文件。
在实施例中,镜像文件生成装置还可以包括第一更新单元306和/或第二更新单元307,如图13所示。
在实施例中,第一更新单元306具体可以用于当基础镜像文件存在更新时,获取更新后的基础镜像文件,在更新后的基础镜像文件的只读层上增加读写层,将应用程序对应的应用数据添加至读写层,得到所述应用程序的第一更新镜像文件。
在一些实施例中,第二更新单元307具体可以用于当应用程序安装文件存在更新时,获取更新后的应用程序安装文件,根据更新后的应用程序安装文件,在操作系统上对应用程序进行更新,并监控应用程序对应的应用数据,当应用数据存在更新时,提取出更新的应用数据作为应用程序的更新数据,将更新数据与应用程序的镜像文件进行合并,得到应用程序更新后的第二更新镜像文件。
在实施例中,第二更新单元307具体可以用于在操作系统上加载应用程序的镜像文件,并在应用程序的镜像文件上增加读写层;根据更新后的应用程序安装文件,在操作系统上对应用程序进行更新,并通过读写层,在应用程序更新过程中对应用程序对应的应用数据进行监控。
在实施例中,第二更新单元307具体可以用于在操作系统以外的区域构建第二共享数据集合,使得第二共享数据集合与更新数据共享数据内容;根据第二预设识别条件,在第二共享数据集合中识别出更新数据中的异常数据和配置数据;在第二共享数据集合内对更新数据中的异常数据进行删除,并对更新数据中的配置数据进行更改,得到目标更新数据;将目标更新数据与应用程序的镜像文件进行合并,得到应用程序更新后的第二更新镜像文件。
在具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合。当作为同一或若干个实体来实现时,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。
本申请实施例还提供了一种电子设备,如图14所示,其示出了本申请实施例所涉及的电子设备的结构示意图。
该电子设备可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、电源403和输入单元404等部件。本领域技术人员可以理解,图14中示出的电子设备的结构并不构成对电子设备的限定,在其它实施例中,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
处理器401是该电子设备的控制中心,其利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。在实施例中,处理器401可包括一个或多个处理核心。在其它实施例中,处理器401可集成应用处理器和调制解调处理器。其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。
存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区。其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。
电子设备还包括给各个部件供电的电源403,电源403可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源403还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该电子设备还可包括输入单元404,该输入单元404可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,电子设备还可以包括显示单元等,在此不再赘述。在本实施例中,电子设备中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现本申请实施例所提供的镜像文件生成装置的各种功能,以及本申请实施例所提供的任一种镜像文件生成方法中的步骤。
本申请实施例中,在接收携带应用程序安装文件的镜像文件生成请求后,根据镜像文件生成请求,在预设系统区域加载操作系统的基础镜像文件,以启动操作系统,然后,在操作系统中安装应用程序安装文件对应的应用程序,并运行应用程序,得到运行应用程序后的系统数据集合和应用程序的属性信息,根据应用程序的属性信息,在系统数据集合中筛选出应用程序对应的应用数据,并将应用数据与基础镜像文件进行合并,以生成应用程序的镜像文件。由于该方案通过在操作系统上安装并运行应用程序,得到系统数据集合,在系统数据集合中筛选出应用程序对应的应用数据,将应用数据和基础镜像文件进行合并来生成应用程序的镜像文件,大大减小了应用程序的镜像文件的内存大小,从而可以节省存储资源。而且,因为通过本申请实施例生成的应用程序的镜像文件不包含与应用程序无关的数据或临时数据,因此可以节省部署应用程序的设备的处理资源,并大大减少应用程序的部署时间。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载 和执行。
为此,本申请实施例还提供了一种计算机可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请实施例所提供的任一种镜像文件生成方法中的步骤。
其中,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该计算机可读存储介质中所存储的指令可以执行本申请实施例所提供的任一种镜像文件生成方法中的步骤,因此,可以实现本申请实施例所提供的任一种镜像文件生成方法所能实现的有益效果。
以上对本申请实施例所提供的一种镜像文件生成方法、装置和计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (16)

  1. 一种镜像文件生成方法,包括:
    接收镜像文件生成请求,所述镜像文件生成请求携带应用程序安装文件;
    根据所述镜像文件生成请求,在预设系统区域加载操作系统的基础镜像文件,以启动操作系统;
    在所述操作系统中安装所述应用程序安装文件对应的应用程序,并运行所述应用程序,得到运行所述应用程序后的系统数据集合和所述应用程序的属性信息;
    根据所述应用程序的属性信息,在所述系统数据集合中筛选出所述应用程序对应的应用数据;
    将所述应用数据与所述基础镜像文件进行合并,以生成所述应用程序的镜像文件。
  2. 根据权利要求1所述的方法,其中,所述基础镜像文件包括一个只读层,所述将所述应用数据与所述基础镜像文件进行合并,以生成所述应用程序的镜像文件,包括:
    根据所述应用数据,确定所述基础镜像文件需要增加的读写层的基本信息;
    在所述基础镜像文件的只读层上增加所述基本信息对应的读写层;
    根据所述基本信息,将所述应用数据添加至所述读写层,得到所述应用程序的镜像文件。
  3. 根据权利要求2所述的方法,其中,所述根据所述基本信息,将所述应用数据添加至所述读写层,得到所述应用程序的镜像文件,包括:
    获取所述应用数据的属性信息;
    根据所述读写层的基本信息,在所述读写层中筛选出与所述应用数据的属性信息相匹配的读写层作为目标读写层;
    将所述应用数据添加至所述目标读写层,将添加了所述应用数据的基础镜像文件作为所述应用程序的镜像文件。
  4. 根据权利要求1所述的方法,其中,所述根据所述应用程序的属性信息,在所述系统数据集合中筛选出所述应用程序对应的应用数据,包括:
    根据所述应用程序的属性信息,遍历所述系统数据集合,得到所述应用程序安装后的初始应用数据;
    对所述初始应用数据进行调整,得到所述应用程序对应的应用数据。
  5. 根据权利要求4所述的方法,其中,所述根据所述应用程序的属性信息,遍历所述系统数据集合,得到所述应用程序安装后的初始应用数据,包括:
    获取所述系统数据集合的全局目录;
    根据所述应用程序的属性信息,在所述全局目录中筛选出目标目录;
    基于所述目标目录,在所述系统数据集合中识别出所述应用程序安装后的初始应用数据,得到初始应用数据集合。
  6. 根据权利要求5所述的方法,其中,所述对所述初始应用数据进行调整,得到所述应用程序对应的应用数据,包括:
    在操作系统以外的区域构建第一共享数据集合,使得所述第一共享数据集合与所述初始应用数据集合共享所述初始应用数据;
    在所述第一共享数据集合内对所述应用数据进行调整,得到所述应用程序对应的应用数据。
  7. 根据权利要求6所述的方法,其中,所述在所述第一共享数据集合内对所述应用数据进行调整,得到所述应用程序对应的应用数据,包括:
    根据第一预设识别条件,在所述应用数据内识别出异常数据和配置数据;
    在所述第一共享数据集合内对所述初始应用数据中的异常数据进行删除,并对所述初始应用数据中的配置数据进行更改,得到所述应用程序对应的应用数据。
  8. 根据权利要求1所述的方法,其中,在运行所述应用程序,得到运行所述应用程序后的系统数据集合和所述应用程序的属性信息之前,还包括:
    在所述应用程序安装文件中查询用于配置所述应用程序的配置信息;
    当存在所述配置信息时,根据所述配置信息,对所述应用程序进行配置;
    所述运行所述应用程序,得到运行所述应用程序后的系统数据集合和所述应用程序的属性信息,包括:在所述操作系统上运行配置后的应用程序,得到运行所述配置后的应用程序后的系统数据集合和所述应用程序的属性信息。
  9. 根据权利要求8所述的方法,其中,所述配置信息包括数据更新信息和/或预设参数信息,所述当存在所述配置信息时,根据所述配置信息,对所述应用程序进行配置,包括:
    当所述配置信息为数据更新信息时,对所述应用程序中所述数据更新信息对应的内置数据进行更 新;
    当所述配置信息为预设参数信息时,对所述应用程序中所述预设参数信息对应的参数进行设置;
    当所述配置信息为所述数据更新信息和预设参数信息时,对所述应用程序中所述数据更新信息对应的内置数据进行更新,并对更新后的应用程序中所述预设参数信息对应的参数进行设置。
  10. 根据权利要求1所述的方法,其中,还包括:
    当所述基础镜像文件存在更新时,获取更新后的基础镜像文件;
    在所述更新后的基础镜像文件的只读层上增加读写层;
    将所述应用程序对应的应用数据添加至所述读写层,得到所述应用程序的第一更新镜像文件。
  11. 根据权利要求1所述的方法,其中,还包括:
    当所述应用程序安装文件存在更新时,获取更新后的应用程序安装文件;
    根据所述更新后的应用程序安装文件,在所述操作系统上对所述应用程序进行更新,并监控所述应用程序对应的应用数据;
    当所述应用数据存在更新时,提取出更新的应用数据作为所述应用程序的更新数据;
    将所述更新数据与所述应用程序的镜像文件进行合并,得到所述应用程序更新后的第二更新镜像文件。
  12. 根据权利要求11所述的方法,其中,所述根据所述更新后应用程序安装文件,在所述操作系统对所述应用程序进行更新,并监控所述应用程序对应的应用数据,包括:
    在所述操作系统上加载所述应用程序的镜像文件,并在所述应用程序的镜像文件上增加读写层;
    根据所述更新后的应用程序安装文件,在所述操作系统上对所述应用程序进行更新,并通过所述读写层,在所述应用程序的更新过程中对所述应用程序对应的应用数据进行监控。
  13. 根据权利要求12所述的方法,其中,所述将所述更新数据与所述应用程序的镜像文件进行合并,得到所述应用程序更新后的第二更新镜像文件,包括:
    在所述操作系统以外的区域构建第二共享数据集合,使得所述第二共享数据集合与所述更新数据共享数据内容;
    根据第二预设识别条件,在所述第二共享数据集合中识别出所述更新数据中的异常数据和配置数据;
    在所述第二共享数据集合内对所述更新数据中的异常数据进行删除,并对所述更新数据中的配置数据进行更改,得到目标更新数据;
    将所述目标更新数据与所述应用程序的镜像文件进行合并,得到所述应用程序更新后的第二更新镜像文件。
  14. 一种镜像文件生成装置,包括:
    接收单元,用于接收镜像文件生成请求,所述镜像文件生成请求携带应用程序安装文件;
    启动单元,用于根据所述镜像文件生成请求,在预设系统区域加载操作系统的基础镜像文件,以启动操作系统;
    运行单元,用于在所述操作系统中安装所述应用程序安装文件对应的应用程序,并运行所述应用程序,得到运行所述应用程序后的系统数据集合和所述应用程序的属性信息;
    筛选单元,用于根据所述应用程序的属性信息,在所述系统数据集合中筛选出所述应用程序对应的应用数据;
    生成单元,用于将所述应用数据与所述基础镜像文件进行合并,以生成所述应用程序的镜像文件。
  15. 一种电子设备,包括处理器和存储器,所述存储器存储有多条程序指令,所述处理器用于运行所述存储器内的程序指令,以执行权利要求1至13任一项所述的镜像文件生成方法。
  16. 一种计算机可读存储介质,其中,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至13任一项所述的镜像文件生成方法。
PCT/CN2021/095410 2020-06-22 2021-05-24 一种镜像文件生成方法、装置和计算机可读存储介质 WO2021258951A1 (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (4)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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