US 11,836,158 B2
Deployment of container-based computer environments
Shreyas Shah, Vienna, VA (US); Michael David Hudson, Roanoke, VA (US); Jay Indravadan Shah, Aldie, VA (US); Clayton Myers, Oak Hill, VA (US); and Jehan Jayant Sethna, Vienna, VA (US)
Assigned to MicroStrategy Incorporated, Vienna, VA (US)
Filed by MicroStrategy Incorporated, Vienna, VA (US)
Filed on Feb. 3, 2020, as Appl. No. 16/780,868.
Prior Publication US 2021/0240734 A1, Aug. 5, 2021
Int. Cl. G06F 16/00 (2019.01); G06F 16/28 (2019.01); G06F 9/54 (2006.01); G06F 9/455 (2018.01)
CPC G06F 16/283 (2019.01) [G06F 9/45558 (2013.01); G06F 9/54 (2013.01); G06F 16/285 (2019.01); G06F 2009/45562 (2013.01); G06F 2009/45595 (2013.01)] 18 Claims
OG exemplary drawing
 
1. A method performed by one or more computers, the method comprising:
providing, by the one or more computers, data for a user interface, the user interface comprising one or more user interface elements for initiating creation of a new container-based server environment;
receiving, by the one or more computers, data indicating user interaction with the one or more user interface elements;
in response to receiving the data indicating user interaction with the one or more user interface elements, creating, by the one or more computers, a new container-based server environment comprising multiple different containers hosted by a remote cluster of processing nodes, the multiple different containers being configured to provide different services that interoperate with each other, including:
accessing stored configuration data that (i) specifies a predetermined set of multiple software images in a repository to use in generating new container-based server environments and (ii) indicates initialization operations to initialize containers generated using the predetermined set of multiple software images;
retrieving, from the repository, each of the software images in the predetermined set of multiple software images;
generating a container on the remote cluster for each of the predetermined set of multiple software images; and
performing the initialization operations indicated by the stored configuration data to initialize the containers, wherein the initialization operations configure the containers to communicate with each other through an application programming interface; and
providing, by the one or more computers, access to the new container-based server environment.