Container Application Update via Host Package Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing container update mechanisms require stopping and restarting the container even for single application updates, leading to inefficiencies in software updates.

Innovation Solution

A method and apparatus that allow for direct software function updates in a running container system by installing a first software package in the host system, making a second package accessible to the container system without restarting, using an executable component to facilitate the update process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the existing container update mechanism is used, then the container can be updated, but the container must be stopped and restarted which reduces update efficiency

Engineering Contradiction:
Improveupdate efficiencyVSAvoidcontainer downtime
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The container system is segmented into multiple independent components: the container runtime environment and individual application packages. This allows updates to be applied to specific application packages without affecting the entire container, enabling in-place updates without stopping the container.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements dynamic package management where application packages can be installed, updated, or removed while the container remains running. The package manager dynamically handles dependencies and conflicts, allowing continuous operation during updates.

Inventive Principle:
Principle #15Dynamics

2Productivity

If a single application is updated, then the application function is improved, but all applications must be stopped and the container restarted which increases time loss

Engineering Contradiction:
Improveapplication update speedVSAvoidcontainer restart time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

Applications are packaged as independent, self-contained units with their own package files. This segmentation allows the package manager to update only the specific application that needs updating, leaving other applications running unaffected in the same container.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system uses package files as copyable, transferable units that can be installed into the running container. The package manager copies the new application version from the package file into the container's file system without requiring container restart, enabling seamless updates.

Inventive Principle:
Principle #26Copying

3Productivity

If the container image file is updated, then the application is updated, but the entire container image must be replaced which increases complexity

Engineering Contradiction:
Improvesoftware update efficiencyVSAvoidupdate process complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The monolithic container image update process is segmented into smaller, manageable application package updates. Each application has its own package file that can be independently managed, installed, and updated without affecting other applications or requiring full image replacement.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A package manager acts as an intermediary between the package files and the running container. It handles the complex tasks of dependency resolution, conflict detection, and seamless installation, simplifying the update process for users while managing the underlying complexity automatically.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11947954B2Electronic apparatus adapted for container and software updating method for running container system
Publication Date: 2024.04.02 QNAP SYST INC
  • US11947954B2 patent drawing
  • US11947954B2 patent drawing
  • US11947954B2 patent drawing

AI summary

An electronic apparatus adapted for a container and a software updating method for a running container system are provided. A first software installation package is installed in a host system. The first software installation package includes an executable component used by the host system and a second software installation package. The executable component provides information required by an installation operation of the first software installation package. The second software installation package is made accessible to a container system by the host system based on the executable component. The second software installation package is installed in the container system to update an application in the container system.