68 lines
2.3 KiB
Groff
68 lines
2.3 KiB
Groff
.nh
|
|
.TH podman-system-migrate 1
|
|
.SH NAME
|
|
podman-system-migrate \- Migrate existing containers to a new podman version
|
|
|
|
.SH SYNOPSIS
|
|
\fBpodman system migrate\fP [\fIoptions\fP]
|
|
|
|
.SH DESCRIPTION
|
|
\fBpodman system migrate\fP migrates containers to the latest podman version.
|
|
|
|
.PP
|
|
\fBpodman system migrate\fP takes care of migrating existing containers to the latest version of podman if any change is necessary.
|
|
|
|
.PP
|
|
"Rootless Podman uses a pause process to keep the unprivileged
|
|
namespaces alive. This prevents any change to the \fB/etc/subuid\fR and
|
|
\fB/etc/subgid\fR files from being propagated to the rootless containers
|
|
while the pause process is running.
|
|
|
|
.PP
|
|
For these changes to be propagated, it is necessary to first stop all
|
|
running containers associated with the user and to also stop the pause
|
|
process and delete its pid file. Instead of doing it manually, \fBpodman
|
|
system migrate\fR can be used to stop both the running containers and the
|
|
pause process. The \fB/etc/subuid\fR and \fB/etc/subgid\fR files can then be
|
|
edited or changed with usermod to recreate the user namespace with the
|
|
newly configured mappings.
|
|
|
|
.SH OPTIONS
|
|
.SS \fB--new-runtime\fP=\fIruntime\fP
|
|
Set a new OCI runtime for all containers.
|
|
This can be used after a system upgrade which changes the default OCI runtime to move all containers to the new runtime.
|
|
There are no guarantees that the containers continue to work under the new runtime, as some runtimes support differing options and configurations.
|
|
|
|
.SH EXAMPLES
|
|
Normal invocation
|
|
|
|
.EX
|
|
### No output is expected from this command.
|
|
$ podman system migrate
|
|
.EE
|
|
|
|
.PP
|
|
Migration to a new OCI runtime (e.g., from crun to runc)
|
|
|
|
.EX
|
|
### Create a container using the current default runtime (e.g., crun)
|
|
$ podman create --name test-alpine alpine
|
|
|
|
### Confirm the current runtime
|
|
$ podman container inspect test-alpine | grep OCIRuntime
|
|
"OCIRuntime": "crun",
|
|
|
|
### Migrate all containers to use a new runtime (e.g., runc)
|
|
$ podman system migrate --new-runtime runc
|
|
|
|
### Verify the container is now using the new runtime
|
|
$ podman container inspect test-alpine | grep OCIRuntime
|
|
"OCIRuntime": "runc",
|
|
.EE
|
|
|
|
.SH SEE ALSO
|
|
\fBpodman(1)\fP, \fBpodman-system(1)\fP, \fBusermod(8)\fP
|
|
|
|
.SH HISTORY
|
|
April 2019, Originally compiled by Giuseppe Scrivano (gscrivan at redhat dot com)
|