Dynamic image composition for container deployment

US11966771B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11966771-B2
Application numberUS-202318154182-A
CountryUS
Kind codeB2
Filing dateJan 13, 2023
Priority dateAug 6, 2019
Publication dateApr 23, 2024
Grant dateApr 23, 2024

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Computing systems, devices, and methods of dynamic image composition for container deployment are disclosed herein. One example technique includes receiving a request for accessing a file from a container process. In response to receiving the request, the technique includes querying a mapping table corresponding to the container process to locate an entry corresponding to a file identifier of the requested file. The entry also includes data identifying a file location on the storage device from which the requested file is accessible. The technique further includes retrieving a copy of the requested file according to the file location identified by the data in the located entry in the mapping table and providing the retrieved copy of the requested file to the container process, thereby allowing the container process to access the requested file.

First claim

Opening claim text (preview).

We claim: 1. A system comprising: a processor; and a memory coupled to the processor, the memory comprising computer executable instructions that, when executed by the processor, perform operations comprising: receiving, at a computing device, an indication that an updated version of a file is available, the file being stored in a container image that is associated with a container process of the computing device; in response to determining the updated version is not currently available at the computing device, downloading to the computing device the updated version from a remote source; accessing an entry in a mapping table corresponding to the container process, the entry comprising a file identifier for the file and identifying a current storage location of the file on the computing device; updating the entry to indicate an updated storage location corresponding to the updated version; and in response to receiving a request for the file, enabling the container process to access the updated version based on the entry comprising the updated storage location. 2. The system of claim 1 , wherein: the request for the file comprises the file identifier; the file identifier in the request is matched to the file identifier in the mapping table to identify the entry; and a pointer to the updated version is retrieved from the mapping table based on identifying the entry. 3. The system of claim 2 , wherein: the pointer is provided to the container process; and the container process uses the pointer to access a file path to the updated version. 4. The system of claim 1 , wherein the mapping table is a tree data structure such that each node of the tree data structure: corresponds to a virtual root; and includes a pointer to a corresponding target root. 5. The system of claim 1 , wherein: the computing device is a host device; and the container image is software deployed on the host device, the container image comprising digital data representing a complete filesystem. 6. The system of claim 1 , wherein the computing device comprises a software filter that binds a file system namespace to a location external to the computing device based on the mapping table. 7. The system of claim 6 , wherein the software filter constructs the mapping table based on a recipe file included in the container image. 8. The system of claim 7 , wherein the recipe file identifies software layers of the computing device, the software layers comprising at least one of: a base layer for software components that are available from a host operating system of the computing device; a modification layer for software components modified in the base layer; or a scratch layer for capturing software component modifications that are unique to the container image. 9. The system of claim 6 , wherein receiving the request for the file comprises: redirecting the request for the file to the software filter; looking up, by the software filter, the updated storage location; and redirecting, by the software filter, the request for the file to the updated storage location. 10. The system of claim 1 , wherein the indication that an updated version of the file is available is received from an update server located remotely from the computing device, the indication including updates to the mapping table. 11. The system of claim 1 , wherein, after updating the entry to indicate the updated storage location, the mapping table comprises: the current storage location for the file; and the updated storage location for the updated version. 12. The system of claim 1 , wherein enabling the container process to access the updated version comprises: receiving, from the container process, the request for the file; analyzing, by a file sharing server, a profile of a container associated with the container process; and based on the analyzing, determining which version of the file to enable the container process to access. 13. A method comprising: receiving, at a host device, an indication that an updated version of a file is available, the file being stored in a container image that is associated with a container process of the host device; in response to determining the updated version is not currently available at the host device, retrieving a remote storage location for the updated version from a remote source; accessing an entry in a mapping table corresponding to the container process, the entry comprising a file identifier for the file and identifying a local storage location of the file on the host device; updating the entry to indicate the updated version and the remote storage location; and in response to receiving a request for the file, enabling the container process to access at least one of the local storage location or the remote storage location based on a profile associated with the container image. 14. The method of claim 13 , wherein: retrieving the remote storage location comprises retrieving a pointer to the updated version on the remote source; and updating the entry comprises storing the pointer in the entry. 15. The method of claim 13 , wherein the file identifier comprises a file path and a file name of the file. 16. The method of claim 13 , wherein the profile comprises at least one of: a hardware configuration for a container; software configuration for a container; or a geolocation of a container. 17. The method of claim 13 , wherein enabling the container process to access the at least one of the local storage location or the remote storage location is further based on a security profile of the file. 18. The method of claim 17 , wherein the security profile comprises at least one of: a geolocation of the host device; a security network used to by the container process; or a digital signature. 19. The method of claim 13 , further comprising: further in response to determining the updated version is not currently available at the host device, downloading the updated version to the host device. 20. A device comprising: a processor; and a memory coupled to the processor, the memory comprising computer executable instructions that, when executed by the processor, perform operations comprising: receiving an indication that an updated version of a file is available, the file being stored in a container image that is associated with a container process executing on the device; in response to determining the updated version is not currently available at the device, retrieving the updated version or a remote storage location for the updated version from a remote source; updating an entry in a mapping table corresponding to the container process by replacing a first local storage location of the file on the device with at least one of: a second local storage location of the updated version on the device; or the remote storage location; and in response to receiving a request for the file, enabling the container process to access the updated version based on the entry.

Assignees

Inventors

Classifications

  • Hypervisor-specific management and integration aspects · CPC title

  • File access structures, e.g. distributed indices (arrangements of input from, or output to, record carriers G06F3/06) · CPC title

  • File search processing · CPC title

  • Distribution of virtual machine instances; Migration and load balancing · CPC title

  • Memory management, e.g. access or allocation · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11966771B2 cover?
Computing systems, devices, and methods of dynamic image composition for container deployment are disclosed herein. One example technique includes receiving a request for accessing a file from a container process. In response to receiving the request, the technique includes querying a mapping table corresponding to the container process to locate an entry corresponding to a file identifier of t…
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G06F9/45558. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 23 2024 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 10 related publications on this page (citations in our corpus or others sharing the same primary CPC).