diff options
author | Radostin Stoyanov <radostin@redhat.com> | 2022-04-12 18:46:32 +0100 |
---|---|---|
committer | Radostin Stoyanov <radostin@redhat.com> | 2022-04-20 18:55:39 +0100 |
commit | 756ecd5400c7a8806890753d4f9fbb2b39eba192 (patch) | |
tree | 3c295209d2c33beaea23e7fd9b083a5a4bfc190a /libpod/container_api.go | |
parent | fca3397dc985047e414894d6cb1623272e20eb40 (diff) | |
download | podman-756ecd5400c7a8806890753d4f9fbb2b39eba192.tar.gz podman-756ecd5400c7a8806890753d4f9fbb2b39eba192.tar.bz2 podman-756ecd5400c7a8806890753d4f9fbb2b39eba192.zip |
Add support for checkpoint image
This is an enhancement proposal for the checkpoint / restore feature of
Podman that enables container migration across multiple systems with
standard image distribution infrastructure.
A new option `--create-image <image>` has been added to the
`podman container checkpoint` command. This option tells Podman to
create a container image. This is a standard image with a single layer,
tar archive, that that contains all checkpoint files. This is similar to
the current approach with checkpoint `--export`/`--import`.
This image can be pushed to a container registry and pulled on a
different system. It can also be exported locally with `podman image
save` and inspected with `podman inspect`. Inspecting the image would
display additional information about the host and the versions of
Podman, criu, crun/runc, kernel, etc.
`podman container restore` has also been extended to support image
name or ID as input.
Suggested-by: Adrian Reber <areber@redhat.com>
Signed-off-by: Radostin Stoyanov <radostin@redhat.com>
Diffstat (limited to 'libpod/container_api.go')
-rw-r--r-- | libpod/container_api.go | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libpod/container_api.go b/libpod/container_api.go index 0b6139335..ebefed600 100644 --- a/libpod/container_api.go +++ b/libpod/container_api.go @@ -754,6 +754,9 @@ type ContainerCheckpointOptions struct { // TargetFile tells the API to read (or write) the checkpoint image // from (or to) the filename set in TargetFile TargetFile string + // CheckpointImageID tells the API to restore the container from + // checkpoint image with ID set in CheckpointImageID + CheckpointImageID string // Name tells the API that during restore from an exported // checkpoint archive a new name should be used for the // restored container @@ -781,6 +784,9 @@ type ContainerCheckpointOptions struct { // ImportPrevious tells the API to restore container with two // images. One is TargetFile, the other is ImportPrevious. ImportPrevious string + // CreateImage tells Podman to create an OCI image from container + // checkpoint in the local image store. + CreateImage string // Compression tells the API which compression to use for // the exported checkpoint archive. Compression archive.Compression |