Systems and methods for updating containers

US10740132B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10740132-B2
Application numberUS-201815883286-A
CountryUS
Kind codeB2
Filing dateJan 30, 2018
Priority dateJan 30, 2018
Publication dateAug 11, 2020
Grant dateAug 11, 2020

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.

The disclosed computer-implemented method for updating containers may include (i) identifying an application container that is instantiated from a static application container image, (ii) identifying ancillary code that is designed to modify execution of the application executing in the application container, (iii) packaging the ancillary code into a data volume container image to be deployed to the host system that hosts the application container, (iv) discovering, by the application container, a data volume container instantiated from the data volume container image on the host system, and (v) modifying, by the application container, the execution of the application executing in the application container with the ancillary code, without modifying the static application container image, at least in part by instantiating the application container with a pointer to the location of the data volume container that contains the ancillary code. Various other methods, systems, and computer-readable media are also disclosed.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method for updating containers, at least a portion of the method being performed by a computing device comprising at least one processor, the method comprising: identifying an application container that is instantiated from a static application container image and that isolates a user space of an application that executes within the application container from other software on a host system while sharing a kernel space with the other software; identifying ancillary code that is designed to modify execution of the application executing in the application container; packaging the ancillary code into a data volume container image to be deployed to the host system that hosts the application container; discovering, by the application container, a pointer to a location of a data volume container instantiated from the data volume container image on the host system; and modifying, by the application container, the execution of the application executing in the application container with the ancillary code, without modifying the static application container image, at least in part by instantiating the application container with the pointer to the location of the data volume container that contains the ancillary code; and configuring, at the creation of the static application container image, the static application container image with a script that scans a predetermined directory for new ancillary code upon the application container being instantiated from the static application container image. 2. The computer-implemented method of claim 1 , wherein discovering, by the application container, the pointer to the location of the data volume container on the host system comprises: discovering, by the application container executing the script, the pointer to the location of the data volume container. 3. The computer-implemented method of claim 1 , wherein: configuring the static application container image with the script that scans for the new ancillary code comprises configuring the script to scan a predetermined directory; packaging the ancillary code into the data volume container image to be deployed to the host system that hosts the application container comprises configuring the data volume container image to instantiate the data volume container in the predetermined directory on the host system; and discovering, by the script, the ancillary code comprises discovering the data volume container in the predetermined directory. 4. The computer-implemented method of claim 1 , wherein discovering, by the application container, the pointer to the location of the data volume container on the host system comprises: configuring a container platform that instantiates the application container on the host system with a script that scans for new ancillary data upon instantiation of the application container by the container platform; and discovering, by the container platform executing the script while instantiating the application container, the location of the data volume container. 5. The computer-implemented method of claim 1 , wherein instantiating the application container with the pointer to the location of the data volume container that contains the ancillary code comprises restarting the application container. 6. The computer-implemented method of claim 1 , further comprising: restarting the application container with an additional pointer to a location of a new data volume container that contains additional ancillary code; discovering, by the application container, the location of the new data volume container; automatically rediscovering, by the application container, the location of the data volume container on the host system; and modifying, by the application container, execution of the application executing in the application container with the ancillary code and the additional ancillary code. 7. The computer-implemented method of claim 1 , wherein the ancillary code comprises a plugin to the application executing in the application container. 8. The computer-implemented method of claim 1 , wherein the ancillary code comprises a patch to the application executing in the application container. 9. The computer-implemented method of claim 1 , wherein discovering, by the application container, the location of the data volume container on the host system comprises creating a symbolic link between the location of the data volume container on the host system and a new location on the host system. 10. The computer-implemented method of claim 1 , further comprising: identifying a first application container that hosts a first instance of the application and a second application container that hosts a second instance of the application; identifying additional ancillary code that is designed to modify the execution of the application; packaging the additional ancillary code into an additional data volume container image; discovering, by the first application container, a pointer to a location of an additional data volume container instantiated from the additional data volume container image; and modifying, by the first application container, the execution of the first instance of the application executing in the first application container with the additional ancillary code but not with the ancillary code; modifying, by the second application container, the execution of the second instance of the application executing in the second application container with the ancillary code but not with the additional ancillary code. 11. The computer-implemented method of claim 1 , wherein modifying, by the application container, the execution of the application executing in the application container with the ancillary code, comprises: locating, by the application container, an installation script in a data volume within the data volume container; and executing the installation script. 12. A system for updating containers, the system comprising: an identification module, stored in memory, that: identifies an application container that is instantiated from a static application container image and that isolates a user space of an application that executes within the application container from other software on a host system while sharing a kernel space with the other software; and identifies ancillary code that is designed to modify execution of the application executing in the application container; a packaging module, stored in memory, that packages the ancillary code into a data volume container image to be deployed to the host system that hosts the application container; a discovery module, stored in memory, that discovers, by the application container, a pointer to a location of a data volume container instantiated from the data volume container image on the host system; a modifying module, stored in memory, that modifies, by the application container, the execution of the application executing in the application container with the ancillary code, without modifying the static application container image, at least in part by instantiating the application container with the pointer to the location of the data volume container that contains the ancillary code; a configuration module, stored in memory, that configures, at the creation of the static application container image, the static application container image with a script that scans a predetermined directory for new ancillary code upon the application container being instantiated from the static application container image; and at least one physical processor that executes the identification module, the packaging module, the discovery module, the modifying module,

Assignees

Inventors

Classifications

  • G06F9/545Primary

    where tasks reside in different layers, e.g. user- and kernel-space · CPC title

  • Hypervisors; Virtual machine monitors · CPC title

  • Guest-host, i.e. hypervisor is an application program itself, e.g. VirtualBox · CPC title

  • Hypervisor-specific management and integration aspects · CPC title

  • Installation · 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 US10740132B2 cover?
The disclosed computer-implemented method for updating containers may include (i) identifying an application container that is instantiated from a static application container image, (ii) identifying ancillary code that is designed to modify execution of the application executing in the application container, (iii) packaging the ancillary code into a data volume container image to be deployed t…
Who is the assignee on this patent?
Veritas Technologies Llc
What technology area does this patent fall under?
Primary CPC classification G06F9/545. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 11 2020 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 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).