podman-container-restore(1) General Commands Manual podman-container-restore(1)
NAME
podman-container-restore - Restore one or more containers from a check-
point
SYNOPSIS
podman container restore [options] name [...]
DESCRIPTION
podman container restore restores a container from a container check-
point or checkpoint image. The container IDs, image IDs or names are
used as input.
OPTIONS
--all, -a
Restore all checkpointed containers.
The default is false.
IMPORTANT: This OPTION does not need a container name or ID as input ar-
gument.
--file-locks
Restore a container with file locks. This option is required to restore
file locks from a checkpoint image. If the checkpoint image does not
contain file locks, this option is ignored. Defaults to not restoring
file locks.
The default is false.
--ignore-rootfs
If a container is restored from a checkpoint tar.gz file it is possible
that it also contains all root file-system changes. With --ignore-rootfs
it is possible to explicitly disable applying these root file-system
changes to the restored container.
The default is false.
IMPORTANT: This OPTION is only available in combination with --import,
-i.
--ignore-static-ip
If the container was started with --ip the restored container also tries
to use that IP address and restore fails if that IP address is already
in use. This can happen, if a container is restored multiple times from
an exported checkpoint with --name, -n.
Using --ignore-static-ip tells Podman to ignore the IP address if it was
configured with --ip during container creation.
The default is false.
--ignore-static-mac
If the container was started with --mac-address the restored container
also tries to use that MAC address and restore fails if that MAC address
is already in use. This can happen, if a container is restored multiple
times from an exported checkpoint with --name, -n.
Using --ignore-static-mac tells Podman to ignore the MAC address if it
was configured with --mac-address during container creation.
The default is false.
--ignore-volumes
This option must be used in combination with the --import, -i option.
When restoring containers from a checkpoint tar.gz file with this op-
tion, the content of associated volumes are not restored.
The default is false.
--import, -i=file
Import a checkpoint tar.gz file, which was exported by Podman. This can
be used to import a checkpointed container from another host.
IMPORTANT: This OPTION does not need a container name or ID as input ar-
gument.
During the import of a checkpoint file Podman selects the same container
runtime which was used during checkpointing. This is especially impor-
tant if a specific (non-default) container runtime was specified during
container creation. Podman also aborts the restore if the container run-
time specified during restore does not much the container runtime used
for container creation.
--import-previous=file
Import a pre-checkpoint tar.gz file which was exported by Podman. This
option must be used with -i or --import. It only works on runc 1.0-rc3
or higher. IMPORTANT: This OPTION is not supported on the remote
client, including Mac and Windows (excluding WSL2) machines.
--keep, -k
Keep all temporary log and statistics files created by CRIU during
checkpointing as well as restoring. These files are not deleted if
restoring fails for further debugging. If restoring succeeds these files
are theoretically not needed, but if these files are needed Podman can
keep the files for further analysis. This includes the checkpoint direc-
tory with all files created during checkpointing. The size required by
the checkpoint directory is roughly the same as the amount of memory re-
quired by the processes in the checkpointed container.
Without the --keep, -k option, the checkpoint is consumed and cannot be
used again.
The default is false.
--latest, -l
Instead of providing the container ID or name, use the last created con-
tainer. The default is false. IMPORTANT: This OPTION is not available
with the remote Podman client, including Mac and Windows (excluding
WSL2) machines. This OPTION does not need a container name or ID as in-
put argument.
--name, -n=name
If a container is restored from a checkpoint tar.gz file it is possible
to rename it with --name, -n. This way it is possible to restore a con-
tainer from a checkpoint multiple times with different names.
If the --name, -n option is used, Podman does not attempt to assign the
same IP address to the container it was using before checkpointing as
each IP address can only be used once, and the restored container has
another IP address. This also means that --name, -n cannot be used in
combination with --tcp-established.
IMPORTANT: This OPTION is only available for a checkpoint image or in
combination with --import, -i.
--pod=name
Restore a container into the pod name. The destination pod for this re-
store has to have the same namespaces shared as the pod this container
was checkpointed from (see **podman pod create --share.
IMPORTANT: This OPTION is only available for a checkpoint image or in
combination with --import, -i.
This option requires at least CRIU 3.16.
--print-stats
Print out statistics about restoring the container(s). The output is
rendered in a JSON array and contains information about how much time
different restore operations required. Many of the restore statistics
are created by CRIU and just passed through to Podman. The following in-
formation is provided in the JSON array:
• podman_restore_duration: Overall time (in microseconds) needed
to restore all checkpoints.
• runtime_restore_duration: Time (in microseconds) the container
runtime needed to restore the checkpoint.
• forking_time: Time (in microseconds) CRIU needed to create
(fork) all processes in the restored container (measured by
CRIU).
• restore_time: Time (in microseconds) CRIU needed to restore all
processes in the container (measured by CRIU).
• pages_restored: Number of memory pages restored (measured by
CRIU).
The default is false.
--publish, -p=port
Replaces the ports that the container publishes, as configured during
the initial container start, with a new set of port forwarding rules.
For more details, see podman run --publish.
--tcp-established
Restore a container with established TCP connections. If the checkpoint
image contains established TCP connections, this option is required dur-
ing restore. If the checkpoint image does not contain established TCP
connections this option is ignored. Defaults to not restoring containers
with established TCP connections.
The default is false.
EXAMPLE
Restore the container "mywebserver".
# podman container restore mywebserver
Import a checkpoint file and a pre-checkpoint file.
# podman container restore --import-previous pre-checkpoint.tar.gz --import checkpoint.tar.gz
Start the container "mywebserver". Make a checkpoint of the container
and export it. Restore the container with other port ranges from the ex-
ported file.
$ podman run --rm -p 2345:80 -d webserver
# podman container checkpoint -l --export=dump.tar
# podman container restore -p 5432:8080 --import=dump.tar
Start a container with the name "foobar-1". Create a checkpoint image
"foobar-checkpoint". Restore the container from the checkpoint image
with a different name.
# podman run --name foobar-1 -d webserver
# podman container checkpoint --create-image foobar-checkpoint foobar-1
# podman inspect foobar-checkpoint
# podman container restore --name foobar-2 foobar-checkpoint
# podman container restore --name foobar-3 foobar-checkpoint
SEE ALSO
podman(1), podman-container-checkpoint(1), podman-run(1), podman-pod-
create(1), criu(8)
HISTORY
September 2018, Originally compiled by Adrian Reber areber@redhat.com
⟨mailto:areber@redhat.com⟩
podman-container-restore(1)
Generated by dwww version 1.16 on Tue Dec 16 06:23:48 CET 2025.