mirror of
https://github.com/containers/podman.git
synced 2025-07-15 03:02:52 +08:00
Merge pull request #10526 from Procyhon/31052021_manpage
[CI:DOCS] UPDATE MANPAGE_SYNTAX (commit,attach,auto-update)
This commit is contained in:
@ -9,48 +9,48 @@ podman\-attach - Attach to a running container
|
||||
**podman container attach** [*options*] *container*
|
||||
|
||||
## DESCRIPTION
|
||||
The attach command allows you to attach to a running container using the container's ID
|
||||
or name, either to view its ongoing output or to control it interactively.
|
||||
|
||||
You can detach from the container (and leave it running) using a configurable key sequence. The default
|
||||
sequence is `ctrl-p,ctrl-q`.
|
||||
Configure the keys sequence using the **--detach-keys** option, or specifying
|
||||
it in the **containers.conf** file: see **containers.conf(5)** for more information.
|
||||
**podman attach** attaches to a running *container* using the *container's name* or *ID*, to either view its ongoing output or to control it interactively.\
|
||||
The *container* can detached from (and leave it running) using a configurable key sequence. The default sequence is `ctrl-p,ctrl-q`. Configure the keys sequence using the **--detach-keys** option, or specifying it in the `containers.conf` file: see **[containers.conf(5)](https://github.com/containers/common/blob/master/docs/containers.conf.5.md)** for more information.
|
||||
|
||||
## OPTIONS
|
||||
#### **--detach-keys**=*sequence*
|
||||
#### **--detach-keys**=**sequence**
|
||||
|
||||
Specify the key sequence for detaching a container. Format is a single character `[a-Z]` or one or more `ctrl-<value>` characters where `<value>` is one of: `a-z`, `@`, `^`, `[`, `,` or `_`. Specifying "" will disable this feature. The default is *ctrl-p,ctrl-q*.
|
||||
Specify the key **sequence** for detaching a *container*. Format is a single character `[a-Z]` or one or more `ctrl-<value>` characters where `<value>` is one of: `a-z`, `@`, `^`, `[`, `,` or `_`. Specifying "" will disable this feature. The default is `ctrl-p,ctrl-q`.
|
||||
|
||||
#### **--latest**, **-l**
|
||||
|
||||
Instead of providing the container name or ID, use the last created container. If you use methods other than Podman
|
||||
to run containers such as CRI-O, the last started container could be from either of those methods. (This option is not available with the remote Podman client)
|
||||
Instead of providing the *container name* or *ID*, use the last created *container*. If you use methods other than Podman to run containers such as CRI-O, the last started *container* could be from either of those methods. The default is **false**.\
|
||||
*IMPORTANT: This option is not available with the remote Podman client*
|
||||
|
||||
#### **--no-stdin**
|
||||
|
||||
Do not attach STDIN. The default is false.
|
||||
Do not attach STDIN. The default is **false**.
|
||||
|
||||
#### **--sig-proxy**=*true*|*false*
|
||||
#### **--sig-proxy**
|
||||
|
||||
Proxy received signals to the process (non-TTY mode only). SIGCHLD, SIGSTOP, and SIGKILL are not proxied. The default is *true*.
|
||||
Proxy received signals to the process (non-TTY mode only). SIGCHLD, SIGSTOP, and SIGKILL are not proxied. The default is **true**.
|
||||
|
||||
## EXAMPLES
|
||||
|
||||
Attach to a container called "foobar".
|
||||
```
|
||||
$ podman attach foobar
|
||||
[root@localhost /]#
|
||||
```
|
||||
|
||||
Attach to the latest created container.
|
||||
```
|
||||
$ podman attach --latest
|
||||
[root@localhost /]#
|
||||
```
|
||||
|
||||
Attach to a container that start with the ID "1234".
|
||||
```
|
||||
$ podman attach 1234
|
||||
[root@localhost /]#
|
||||
```
|
||||
|
||||
Attach to a container without attaching STDIN.
|
||||
```
|
||||
$ podman attach --no-stdin foobar
|
||||
```
|
||||
|
||||
## SEE ALSO
|
||||
podman(1), podman-exec(1), podman-run(1), containers.conf(5)
|
||||
**[podman(1)](podman.1.md)**, **[podman-exec(1)](podman-exec.1.md)**, **[podman-run(1)](podman-run.1.md)**, **[containers.conf(5)](https://github.com/containers/common/blob/master/docs/containers.conf.5.md)**
|
||||
|
@ -1,16 +1,16 @@
|
||||
% podman-auto-update(1)
|
||||
|
||||
## NAME
|
||||
podman-auto-update - Auto update containers according to their auto-update policy
|
||||
podman\-auto-update - Auto update containers according to their auto-update policy
|
||||
|
||||
## SYNOPSIS
|
||||
**podman auto-update** [*options*]
|
||||
|
||||
## DESCRIPTION
|
||||
`podman auto-update` looks up containers with a specified "io.containers.autoupdate" label (i.e., the auto-update policy).
|
||||
**podman auto-update** looks up containers with a specified `io.containers.autoupdate` label (i.e., the auto-update policy).
|
||||
|
||||
If the label is present and set to "registry", Podman reaches out to the corresponding registry to check if the image has been updated.
|
||||
The label "image" is an alternative to "registry" maintained for backwards compatibility.
|
||||
If the label is present and set to `registry`, Podman reaches out to the corresponding registry to check if the image has been updated.
|
||||
The label `image` is an alternative to `registry` maintained for backwards compatibility.
|
||||
An image is considered updated if the digest in the local storage is different than the one of the remote image.
|
||||
If an image must be updated, Podman pulls it down and restarts the systemd unit executing the container.
|
||||
|
||||
@ -18,60 +18,57 @@ The registry policy requires a fully-qualified image reference (e.g., quay.io/po
|
||||
This enforcement is necessary to know which image to actually check and pull.
|
||||
If an image ID was used, Podman would not know which image to check/pull anymore.
|
||||
|
||||
Alternatively, if the autoupdate label is set to "local", Podman will compare the image a container is using to the image with it's raw name in local storage.
|
||||
Alternatively, if the autoupdate label is set to `local`, Podman will compare the image a container is using to the image with its raw name in local storage.
|
||||
If an image is updated locally, Podman simply restarts the systemd unit executing the container.
|
||||
|
||||
If "io.containers.autoupdate.authfile" label is present, Podman reaches out to corresponding authfile when pulling images.
|
||||
If `io.containers.autoupdate.authfile` label is present, Podman reaches out to the corresponding authfile when pulling images.
|
||||
|
||||
At container-creation time, Podman looks up the "PODMAN_SYSTEMD_UNIT" environment variables and stores it verbatim in the container's label.
|
||||
This variable is now set by all systemd units generated by `podman-generate-systemd` and is set to `%n` (i.e., the name of systemd unit starting the container).
|
||||
At container-creation time, Podman looks up the `PODMAN_SYSTEMD_UNIT` environment variable and stores it verbatim in the container's label.
|
||||
This variable is now set by all systemd units generated by **[podman-generate-systemd](podman-generate-systemd.1.md)** and is set to `%n` (i.e., the name of systemd unit starting the container).
|
||||
This data is then being used in the auto-update sequence to instruct systemd (via DBUS) to restart the unit and hence to restart the container.
|
||||
|
||||
Note that `podman auto-update` relies on systemd. The systemd units are expected to be generated with `podman-generate-systemd --new`, or similar units that create new containers in order to run the updated images.
|
||||
Note that **podman auto-update** relies on systemd. The systemd units are expected to be generated with **[podman-generate-systemd --new](podman-generate-systemd.1.md#--new)**, or similar units that create new containers in order to run the updated images.
|
||||
Systemd units that start and stop a container cannot run a new image.
|
||||
|
||||
|
||||
### Systemd Unit and Timer
|
||||
|
||||
Podman ships with a `podman-auto-update.service` systemd unit. This unit is triggered daily at midnight by the `podman-auto-update.timer` systemd timer. The timer can be altered for custom time-based updates if desired. The unit can further be invoked by other systemd units (e.g., via the dependency tree) or manually via `systemctl start podman-auto-update.service`.
|
||||
|
||||
Podman ships with a `podman-auto-update.service` systemd unit. This unit is triggered daily at midnight by the `podman-auto-update.timer` systemd timer. The timer can be altered for custom time-based updates if desired. The unit can further be invoked by other systemd units (e.g., via the dependency tree) or manually via **systemctl start podman-auto-update.service**.
|
||||
|
||||
## OPTIONS
|
||||
|
||||
#### **--authfile**=*path*
|
||||
|
||||
Path of the authentication file. Default is ${XDG\_RUNTIME\_DIR}/containers/auth.json, which is set using `podman login`.
|
||||
If the authorization state is not found there, $HOME/.docker/config.json is checked, which is set using `docker login`.
|
||||
Path of the authentication file. Default is `${XDG_RUNTIME_DIR}/containers/auth.json`, which is set using **[podman login](podman-login.1.md)**.
|
||||
If the authorization state is not found there, `$HOME/.docker/config.json` is checked, which is set using **docker login**.
|
||||
|
||||
Note: You can also override the default path of the authentication file by setting the REGISTRY\_AUTH\_FILE
|
||||
environment variable. `export REGISTRY_AUTH_FILE=path`
|
||||
Note: There is also the option to override the default path of the authentication file by setting the `REGISTRY_AUTH_FILE` environment variable. This can be done with **export REGISTRY_AUTH_FILE=_path_**.
|
||||
|
||||
## EXAMPLES
|
||||
|
||||
Autoupdate with registry policy
|
||||
|
||||
```
|
||||
# Start a container
|
||||
### Start a container
|
||||
$ podman run --label "io.containers.autoupdate=registry" \
|
||||
--label "io.containers.autoupdate.authfile=/some/authfile.json" \
|
||||
-d busybox:latest top
|
||||
bc219740a210455fa27deacc96d50a9e20516492f1417507c13ce1533dbdcd9d
|
||||
|
||||
# Generate a systemd unit for this container
|
||||
### Generate a systemd unit for this container
|
||||
$ podman generate systemd --new --files bc219740a210455fa27deacc96d50a9e20516492f1417507c13ce1533dbdcd9d
|
||||
/home/user/containers/libpod/container-bc219740a210455fa27deacc96d50a9e20516492f1417507c13ce1533dbdcd9d.service
|
||||
|
||||
# Load the new systemd unit and start it
|
||||
### Load the new systemd unit and start it
|
||||
$ mv ./container-bc219740a210455fa27deacc96d50a9e20516492f1417507c13ce1533dbdcd9d.service ~/.config/systemd/user
|
||||
$ systemctl --user daemon-reload
|
||||
|
||||
# If the previously created containers or pods are using shared resources, such as ports, make sure to remove them before starting the generated systemd units.
|
||||
### If the previously created containers or pods are using shared resources, such as ports, make sure to remove them before starting the generated systemd units.
|
||||
$ podman stop bc219740a210455fa27deacc96d50a9e20516492f1417507c13ce1533dbdcd9d
|
||||
$ podman rm bc219740a210455fa27deacc96d50a9e20516492f1417507c13ce1533dbdcd9d
|
||||
|
||||
$ systemctl --user start container-bc219740a210455fa27deacc96d50a9e20516492f1417507c13ce1533dbdcd9d.service
|
||||
|
||||
# Auto-update the container
|
||||
### Auto-update the container
|
||||
$ podman auto-update
|
||||
container-bc219740a210455fa27deacc96d50a9e20516492f1417507c13ce1533dbdcd9d.service
|
||||
```
|
||||
@ -79,37 +76,37 @@ container-bc219740a210455fa27deacc96d50a9e20516492f1417507c13ce1533dbdcd9d.servi
|
||||
Autoupdate with local policy
|
||||
|
||||
```
|
||||
# Start a container
|
||||
### Start a container
|
||||
$ podman run --label "io.containers.autoupdate=local" \
|
||||
-d busybox:latest top
|
||||
be0889fd06f252a2e5141b37072c6bada68563026cb2b2649f53394d87ccc338
|
||||
|
||||
# Generate a systemd unit for this container
|
||||
### Generate a systemd unit for this container
|
||||
$ podman generate systemd --new --files be0889fd06f252a2e5141b37072c6bada68563026cb2b2649f53394d87ccc338
|
||||
/home/user/containers/libpod/container-be0889fd06f252a2e5141b37072c6bada68563026cb2b2649f53394d87ccc338.service
|
||||
|
||||
# Load the new systemd unit and start it
|
||||
### Load the new systemd unit and start it
|
||||
$ mv ./container-be0889fd06f252a2e5141b37072c6bada68563026cb2b2649f53394d87ccc338.service ~/.config/systemd/user
|
||||
$ systemctl --user daemon-reload
|
||||
|
||||
# If the previously created containers or pods are using shared resources, such as ports, make sure to remove them before starting the generated systemd units.
|
||||
### If the previously created containers or pods are using shared resources, such as ports, make sure to remove them before starting the generated systemd units.
|
||||
$ podman stop be0889fd06f252a2e5141b37072c6bada68563026cb2b2649f53394d87ccc338
|
||||
$ podman rm be0889fd06f252a2e5141b37072c6bada68563026cb2b2649f53394d87ccc338
|
||||
|
||||
$ systemctl --user start container-be0889fd06f252a2e5141b37072c6bada68563026cb2b2649f53394d87ccc338.service
|
||||
|
||||
# Get the name of the container
|
||||
### Get the name of the container
|
||||
$ podman ps
|
||||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
||||
01f5c8113e84 docker.io/library/busybox:latest top 2 seconds ago Up 3 seconds ago inspiring_galileo
|
||||
|
||||
# Modify the image
|
||||
### Modify the image
|
||||
$ podman commit --change CMD=/bin/bash inspiring_galileo busybox:latest
|
||||
|
||||
# Auto-update the container
|
||||
### Auto-update the container
|
||||
$ podman auto-update
|
||||
container-be0889fd06f252a2e5141b37072c6bada68563026cb2b2649f53394d87ccc338.service
|
||||
```
|
||||
|
||||
## SEE ALSO
|
||||
podman(1), podman-generate-systemd(1), podman-run(1), systemd.unit(5)
|
||||
**[podman(1)](podman.1.md)**, **[podman-generate-systemd(1)](podman-generate-systemd.1.md)**, **[podman-run(1)](podman-run.1.md)**, systemd.unit(5)
|
||||
|
@ -9,34 +9,27 @@ podman\-commit - Create new image based on the changed container
|
||||
**podman container commit** [*options*] *container* [*image*]
|
||||
|
||||
## DESCRIPTION
|
||||
**podman commit** creates an image based on a changed container. The author of the
|
||||
image can be set using the `--author` flag. Various image instructions can be
|
||||
configured with the `--change` flag and a commit message can be set using the
|
||||
`--message` flag. The container and its processes are paused while the image is
|
||||
committed. This minimizes the likelihood of data corruption when creating the new
|
||||
image. If this is not desired, the `--pause` flag can be set to false. When the commit
|
||||
is complete, Podman will print out the ID of the new image.
|
||||
**podman commit** creates an image based on a changed *container*. The author of the image can be set using the **--author** OPTION. Various image instructions can be configured with the **--change** OPTION and a commit message can be set using the **--message** OPTION. The *container* and its processes are paused while the image is committed. This minimizes the likelihood of data corruption when creating the new image. If this is not desired, the **--pause** OPTION can be set to *false*. When the commit is complete, Podman will print out the ID of the new image.
|
||||
|
||||
If *image* does not begin with a registry name component, `localhost` will be added to the name.
|
||||
If *image* is not provided, the values for the `REPOSITORY` and `TAG` values of the created image will each be set to `<none>`.
|
||||
If `image` does not begin with a registry name component, `localhost` will be added to the name.
|
||||
If `image` is not provided, the values for the `REPOSITORY` and `TAG` values of the created image will each be set to `<none>`.
|
||||
|
||||
## OPTIONS
|
||||
|
||||
#### **--author**, **-a**=*author*
|
||||
|
||||
Set the author for the committed image
|
||||
Set the author for the committed image.
|
||||
|
||||
#### **--change**, **-c**=*instruction*
|
||||
|
||||
Apply the following possible instructions to the created image:
|
||||
**CMD** | **ENTRYPOINT** | **ENV** | **EXPOSE** | **LABEL** | **ONBUILD** | **STOPSIGNAL** | **USER** | **VOLUME** | **WORKDIR**
|
||||
|
||||
Can be set multiple times
|
||||
Can be set multiple times.
|
||||
|
||||
#### **--format**, **-f**=*format*
|
||||
#### **--format**, **-f** =**oci** | *docker*
|
||||
|
||||
Set the format of the image manifest and metadata. The currently supported formats are _oci_ and _docker_. If
|
||||
not specifically set, the default format used is _oci_.
|
||||
Set the format of the image manifest and metadata. The currently supported formats are **oci** and *docker*. The default is **oci**.
|
||||
|
||||
#### **--iidfile**=*ImageIDfile*
|
||||
|
||||
@ -44,23 +37,24 @@ Write the image ID to the file.
|
||||
|
||||
#### **--include-volumes**
|
||||
|
||||
Include in the committed image any volumes added to the container by the `--volume` or `--mount` options to the `podman create` and `podman run` commands.
|
||||
Include in the committed image any volumes added to the container by the **--volume** or **--mount** OPTIONS to the **[podman create](podman-create.1.md)** and **[podman run](podman-run.1.md)** commands. The default is **false**.
|
||||
|
||||
#### **--message**, **-m**=*message*
|
||||
|
||||
Set commit message for committed image. The message field is not supported in _oci_ format.
|
||||
Set commit message for committed image.\
|
||||
*IMPORTANT: The message field is not supported in `oci` format.*
|
||||
|
||||
#### **--pause**, **-p**
|
||||
|
||||
Pause the container when creating an image
|
||||
Pause the container when creating an image. The default is **false**.
|
||||
|
||||
#### **--quiet**, **-q**
|
||||
|
||||
Suppress output
|
||||
Suppresses output. The default is **false**.
|
||||
|
||||
## EXAMPLES
|
||||
|
||||
### Create image from container with entrypoint and label
|
||||
Create image from container with entrypoint and label
|
||||
```
|
||||
$ podman commit --change CMD=/bin/bash --change ENTRYPOINT=/bin/sh --change "LABEL blue=image" reverent_golick image-committed
|
||||
Getting image source signatures
|
||||
@ -73,39 +67,39 @@ Storing signatures
|
||||
e3ce4d93051ceea088d1c242624d659be32cf1667ef62f1d16d6b60193e2c7a8
|
||||
```
|
||||
|
||||
### Create image from container with commit message
|
||||
Create image from container with commit message
|
||||
```
|
||||
$ podman commit -q --message "committing container to image"
|
||||
reverent_golick image-committed
|
||||
e3ce4d93051ceea088d1c242624d659be32cf1667ef62f1d16d6b60193e2c7a8 ```
|
||||
e3ce4d93051ceea088d1c242624d659be32cf1667ef62f1d16d6b60193e2c7a8
|
||||
```
|
||||
|
||||
### Create image from container with author
|
||||
Create image from container with author
|
||||
```
|
||||
$ podman commit -q --author "firstName lastName" reverent_golick image-committed
|
||||
e3ce4d93051ceea088d1c242624d659be32cf1667ef62f1d16d6b60193e2c7a8
|
||||
```
|
||||
|
||||
### Pause a running container while creating the image
|
||||
Pause a running container while creating the image
|
||||
```
|
||||
$ podman commit -q --pause=true containerID image-committed
|
||||
e3ce4d93051ceea088d1c242624d659be32cf1667ef62f1d16d6b60193e2c7a8
|
||||
```
|
||||
|
||||
### Create an image from a container with a default image tag
|
||||
Create an image from a container with a default image tag
|
||||
```
|
||||
$ podman commit containerID
|
||||
e3ce4d93051ceea088d1c242624d659be32cf1667ef62f1d16d6b60193e2c7a8
|
||||
```
|
||||
|
||||
### Create an image from container with default required capabilities are SETUID and SETGID
|
||||
Create an image from container with default required capabilities are SETUID and SETGID
|
||||
```
|
||||
$ podman commit -q --change LABEL=io.containers.capabilities=setuid,setgid epic_nobel privimage
|
||||
400d31a3f36dca751435e80a0e16da4859beb51ff84670ce6bdc5edb30b94066
|
||||
```
|
||||
|
||||
## SEE ALSO
|
||||
podman(1), podman-run(1), podman-create(1)
|
||||
**[podman(1)](podman.1.md)**, **[podman-run(1)](podman-run.1.md)**, **[podman-create(1)](podman-create.1.md)**
|
||||
|
||||
## HISTORY
|
||||
December 2017, Originally compiled by Urvashi Mohnani <umohnani@redhat.com>
|
||||
|
Reference in New Issue
Block a user