Merge pull request #27055 from Luap99/revert-quadlet-docs

Revert quadlet docs rewrite
This commit is contained in:
openshift-merge-bot[bot]
2025-09-11 17:33:50 +00:00
committed by GitHub
133 changed files with 2698 additions and 2964 deletions

View File

@ -34,7 +34,6 @@ podman-manifest-create.1.md
podman-manifest-inspect.1.md
podman-manifest-push.1.md
podman-mount.1.md
podman-network-create.1.md
podman-network-ls.1.md
podman-network-reload.1.md
podman-pause.1.md
@ -70,11 +69,3 @@ podman-unpause.1.md
podman-update.1.md
podman-volume-ls.1.md
podman-wait.1.md
podman-build.unit.5.md
podman-container.unit.5.md
podman-image.unit.5.md
podman-kube.unit.5.md
podman-kube-down.1.md
podman-network.unit.5.md
podman-pod.unit.5.md
podman-volume.unit.5.md

View File

@ -17,8 +17,6 @@ mechanism:
```
@@option foo ! includes options/foo.md
@@option quadlet:foo ! includes options/foo.md with `is_quadlet=True`
! See "Jinja2 Templating" below.
```
The tool that does this is `hack/markdown-preprocess`. It is a python
@ -27,37 +25,6 @@ file, this script creates a `.md` file that can then be read by
`go-md2man`, `sphinx`, anything that groks markdown. This runs as
part of `make docs`.
Jinja2 Templating
=================
Some options are used as both Podman command line option and Quadlet
option. To reduce the duplication, the Jinja2 templating system can be
used to define parts which should be rendered only in Quadlet man-pages:
```
<< if is_quadlet >>
### `DNS=`
<< else >>
#### **--dns**=*ipaddr*
<< endif >>
```
It is also possible to use in-line condition:
```
<< '**DNS=.**' if is_quadlet else '**--dns**' >>
```
Following variables are available for Jinja2 Templates:
- `is_quadlet`: True if file is imported using `@@option quadlet:foo`.
- `subcommand`: Same as `<<subcommand>>`, see below.
This allows the shared use of examples in the option file:
- `fullcommand`: Same as `<<fullsubcommand>>`, see below.
For more information about Jinja2, check
https://jinja.palletsprojects.com/en/stable/.
Special Substitutions
=====================

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman build, podman-container.unit.5.md.in, create, farm build, pod create, podman-pod.unit.5.md.in, run
####> podman build, create, farm build, pod create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `AddHost=hostname[;hostname[;...]]:ip`
<< else >>
#### **--add-host**=*hostname[;hostname[;...]]*:*ip*
<< endif >>
Add a custom host-to-IP mapping to the <<container|pod>>'s `/etc/hosts` file.

View File

@ -1,13 +0,0 @@
####> This option file is used in:
####> podman podman-image.unit.5.md.in, pull
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `AllTags=true`
<< else >>
#### **--all-tags**, **-a**
<< endif >>
All tagged images in the repository are pulled.
*IMPORTANT: When using the all-tags flag, Podman does not iterate over the search registries in the **[containers-registries.conf(5)](https://github.com/containers/image/blob/main/docs/containers-registries.conf.5.md)** but always uses docker.io for unqualified image names.*

View File

@ -1,11 +1,7 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, kube play, run
####> podman create, kube play, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Annotation=key=value`
<< else >>
#### **--annotation**=*key=value*
<< endif >>
Add an annotation to the container<<| or pod>>. This option can be set multiple times.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman build, podman-build.unit.5.md.in, farm build
####> podman build, farm build
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Annotation=annotation=value [annotation=value ...]`
<< else >>
#### **--annotation**=*annotation=value*
<< endif >>
Add an image *annotation* (e.g. annotation=*value*) to the image metadata. Can
be used multiple times.

View File

@ -1,12 +1,7 @@
####> This option file is used in:
####> podman podman-build.unit.5.md.in, create, podman-image.unit.5.md.in, pull, run
####> podman create, pull, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Arch=ARCH`
<< else >>
#### **--arch**=*ARCH*
<< endif >>
Override the architecture, defaults to hosts, of the image to be pulled. For example, `arm`.
Unless overridden, subsequent lookups of the same image in the local storage matches this architecture, regardless of the host.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman artifact pull, artifact push, auto update, build, podman-build.unit.5.md.in, container runlabel, create, farm build, image sign, podman-image.unit.5.md.in, kube play, login, logout, manifest add, manifest inspect, manifest push, pull, push, run, search
####> podman artifact pull, artifact push, auto update, build, container runlabel, create, farm build, image sign, kube play, login, logout, manifest add, manifest inspect, manifest push, pull, push, run, search
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `AuthFile=path`
<< else >>
#### **--authfile**=*path*
<< endif >>
Path of the authentication file. Default is `${XDG_RUNTIME_DIR}/containers/auth.json` on Linux, and `$HOME/.config/containers/auth.json` on Windows/macOS.
The file is created by **[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**.

View File

@ -1,11 +0,0 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in
####> If file is edited, make sure the changes
####> are applicable to all of those.
### `AutoUpdate=registry`
Indicates whether the container will be auto-updated ([podman-auto-update(1)](podman-auto-update.1.md)). The following values are supported:
* `registry`: Requires a fully-qualified image reference (e.g., quay.io/podman/stable:latest) to be used to create the container. This enforcement is necessary to know which image to actually check and pull. If an image ID was used, Podman does not know which image to check/pull anymore.
* `local`: Tells Podman to 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.

View File

@ -2,12 +2,7 @@
####> podman build, farm build
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `AddCapability=CAP_xxx`
<< else >>
#### **--cap-add**=*CAP\_xxx*
<< endif >>
When executing RUN instructions, run the command specified in the instruction
with the specified capability added to its capability set.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `AddCapability=capability`
<< else >>
#### **--cap-add**=*capability*
<< endif >>
Add Linux capabilities.

View File

@ -1,13 +1,7 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `DropCapability=capability`
<< else >>
#### **--cap-drop**=*capability*
<< endif >>
Drop these capabilities from the default podman capability set, or `all` to drop all capabilities.
This is a space separated list of capabilities.
Drop Linux capabilities.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman artifact pull, artifact push, build, container runlabel, create, farm build, image sign, podman-image.unit.5.md.in, kube play, login, manifest add, manifest push, pull, push, run, search
####> podman artifact pull, artifact push, build, container runlabel, create, farm build, image sign, kube play, login, manifest add, manifest push, pull, push, run, search
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `CertDir=path`
<< else >>
#### **--cert-dir**=*path*
<< endif >>
Use certificates at *path* (\*.crt, \*.cert, \*.key) to connect to the registry. (Default: /etc/containers/certs.d)
For details, see **[containers-certs.d(5)](https://github.com/containers/image/blob/main/docs/containers-certs.d.5.md)**.

View File

@ -1,24 +1,12 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `CgroupsMode=how`
<< else >>
#### **--cgroups**=*how*
<< endif >>
Determines whether the container creates CGroups.
<< if is_quadlet >>
By default, the cgroups mode of the container created by Quadlet is `split`,
which differs from the default (`enabled`) used by the Podman CLI.
If the container joins a pod (i.e. `Pod=` is specified), you may want to change this to
`no-conmon` or `enabled` so that pod level cgroup resource limits can take effect.
<< else >>
Default is **enabled**.
<< endif >>
The **enabled** option creates a new cgroup under the cgroup-parent.
The **disabled** option forces the container to not create CGroups, and thus conflicts with CGroup options (**--cgroupns** and **--cgroup-parent**).

View File

@ -1,18 +0,0 @@
####> This option file is used in:
####> podman kube play, podman-kube.unit.5.md.in
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `ConfigMap=path`
<< else >>
#### **--configmap**=*path*
<< endif >>
Use Kubernetes configmap YAML at path to provide a source for environment variable values within the containers of the pod. (This option is not available with the remote Podman client)
<< if is_quadlet >>
The value may contain only one path but it may be absolute or relative to the location of the unit file.
<< else >>
Note: The **--configmap** option can be used multiple times or a comma-separated list of paths can be used to pass multiple Kubernetes configmap YAMLs.
The YAML file may be in a multi-doc YAML format. But, it must contain only configmaps.
<< endif >>

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman artifact pull, artifact push, build, container runlabel, create, farm build, podman-image.unit.5.md.in, kube play, manifest add, manifest push, pull, push, run, search
####> podman artifact pull, artifact push, build, container runlabel, create, farm build, kube play, manifest add, manifest push, pull, push, run, search
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Creds=[username[:password]]`
<< else >>
#### **--creds**=*[username[:password]]*
<< endif >>
The [username[:password]] to use to authenticate with the registry, if required.
If one or both values are not supplied, a command line prompt appears and the

View File

@ -1,11 +1,7 @@
####> This option file is used in:
####> podman artifact pull, build, create, farm build, podman-image.unit.5.md.in, pull, run
####> podman artifact pull, build, create, farm build, pull, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `DecryptionKey=key[:passphrase]`
<< else >>
#### **--decryption-key**=*key[:passphrase]*
<< endif >>
The [key[:passphrase]] to be used for decryption of images. Key can point to keys and/or certificates. Decryption is tried with all keys. If the key is protected by a passphrase, it is required to be passed in the argument and omitted otherwise.

View File

@ -1,18 +1,12 @@
####> This option file is used in:
####> podman build, podman-container.unit.5.md.in, create, farm build, pod clone, pod create, run
####> podman build, create, farm build, pod clone, pod create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `AddDevice=host-device[:container-device][:permissions]`
<< else >>
#### **--device**=*host-device[:container-device][:permissions]*
<< endif >>
Add a host device to the <<container|pod>>. The format of this is
`HOST-DEVICE[:CONTAINER-DEVICE][:PERMISSIONS]`, where `HOST-DEVICE` is the path of
the device node on the host, `CONTAINER-DEVICE` is the path of the device node in
the container, and `PERMISSIONS` is a list of permissions combining 'r' for read,
'w' for write, and 'm' for mknod(2).
Add a host device to the <<container|pod>>. Optional *permissions* parameter
can be used to specify device permissions by combining
**r** for read, **w** for write, and **m** for **mknod**(2).
Example: **--device=/dev/sdc:/dev/xvdc:rwm**.

View File

@ -1,12 +0,0 @@
####> This option file is used in:
####> podman network create, podman-network.unit.5.md.in
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `DisableDNS=true`
<< else >>
#### **--disable-dns**
<< endif >>
Disables the DNS plugin for this network which if enabled, can perform container to container name
resolution. It is only supported with the `bridge` driver, for other drivers it is always disabled.

View File

@ -1,12 +1,7 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, podman-pod.unit.5.md.in, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `DNSOption=option`
<< else >>
#### **--dns-option**=*option*
<< endif >>
Set custom DNS options. Invalid if using << '**DNSOption=**' if is_quadlet else '**--dns-option**' >>
with << '**Network=**' if is_quadlet else '**--network**' >> that is set to **none** or **container:**_id_.
Set custom DNS options. Invalid if using **--dns-option** with **--network** that is set to **none** or **container:**_id_.

View File

@ -1,11 +1,7 @@
####> This option file is used in:
####> podman build, podman-build.unit.5.md.in, farm build
####> podman build, farm build
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `DNSOption=option`
<< else >>
#### **--dns-option**=*option*
<< endif >>
Set custom DNS options to be used during the build.

View File

@ -1,13 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, podman-pod.unit.5.md.in, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `DNSSearch=domain`
<< else >>
#### **--dns-search**=*domain*
<< endif >>
Set custom DNS search domains. Invalid if using << '**DNSSearch=**' if is_quadlet else '**--dns-search**' >>
with with << '**Network=**' if is_quadlet else '**--network**' >> that is set to **none** or **container:**_id_.
Use << '**DNSSearch=.**' if is_quadlet else '**--dns-search=.**' >> to remove the search domain.
Set custom DNS search domains. Invalid if using **--dns-search** with **--network** that is set to **none** or **container:**_id_.
Use **--dns-search=.** to remove the search domain.

View File

@ -1,11 +1,7 @@
####> This option file is used in:
####> podman build, podman-build.unit.5.md.in, farm build
####> podman build, farm build
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `DNSSearch=domain`
<< else >>
#### **--dns-search**=*domain*
<< endif >>
Set custom DNS search domains to be used during the build.

View File

@ -1,19 +1,15 @@
####> This option file is used in:
####> podman build, podman-build.unit.5.md.in, podman-container.unit.5.md.in, create, farm build, network create, podman-network.unit.5.md.in, podman-pod.unit.5.md.in, run
####> podman build, create, farm build, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `DNS=ipaddr`
<< else >>
#### **--dns**=*ipaddr*
<< endif >>
Set custom DNS servers.
This option can be used to override the DNS
configuration passed to the container. Typically this is necessary when the
host DNS configuration is invalid for the container (e.g., **127.0.0.1**). When this
is the case the << '**DNS=.**' if is_quadlet else '**--dns**' >> flag is necessary for every run.
is the case the **--dns** flag is necessary for every run.
The special value **none** can be specified to disable creation of _/etc/resolv.conf_ in the container by Podman.
The _/etc/resolv.conf_ file in the image is then used without changes.

View File

@ -1,25 +0,0 @@
####> This option file is used in:
####> podman network create, podman-network.unit.5.md.in
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Driver=driver`
<< else >>
#### **--driver**, **-d**=*driver*
<< endif >>
Driver to manage the network. Currently `bridge`, `macvlan` and `ipvlan` are supported. Defaults to `bridge`.
As rootless the `macvlan` and `ipvlan` driver have no access to the host network interfaces because rootless networking requires a separate network namespace.
The netavark backend allows the use of so called *netavark plugins*, see the
[plugin-API.md](https://github.com/containers/netavark/blob/main/plugin-API.md)
documentation in netavark. The binary must be placed in a specified directory
so podman can discover it, this list is set in `netavark_plugin_dirs` in
**[containers.conf(5)](https://github.com/containers/common/blob/main/docs/containers.conf.5.md)**
under the `[network]` section.
The name of the plugin can then be used as driver to create a network for your plugin.
The list of all supported drivers and plugins can be seen with `podman info --format {{.Plugins.Network}}`.
Note that the `macvlan` and `ipvlan` drivers do not support port forwarding. Support for port forwarding
with a plugin depends on the implementation of the plugin.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Entrypoint="command"`
<< else >>
#### **--entrypoint**=*"command"* | *'["command", "arg1", ...]'*
<< endif >>
Override the default ENTRYPOINT from the image.
@ -16,7 +12,7 @@ because it specifies what executable to run when the container starts, but it is
default nature or behavior. When the ENTRYPOINT is set, the
container runs as if it were that binary, complete with default options. More options can be
passed in via the COMMAND. But, if a user wants to run
something else inside the container, the << '**Entrypoint=**' if is_quadlet else '**--entrypoint=.**' >>option allows a new
something else inside the container, the **--entrypoint** option allows a new
ENTRYPOINT to be specified.
Specify multi option commands in the form of a JSON string.

View File

@ -1,11 +1,7 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, exec, run
####> podman create, exec, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `EnvironmentFile=file`
<< else >>
#### **--env-file**=*file*
<< endif >>
Read in a line-delimited file of environment variables.

View File

@ -1,11 +1,7 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `EnvironmentHost=`
<< else >>
#### **--env-host**
<< endif >>
Use host environment inside of the container. See **Environment** note below for precedence. (This option is not available with the remote Podman client, including Mac and Windows (excluding WSL2) machines)

View File

@ -2,16 +2,10 @@
####> podman build, farm build
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Env=env[=value]`
<< else >>
#### **--env**=*env[=value]*
<< endif >>
Add a value (e.g. env=*value*) to the built image. Can be used multiple times.
If neither `=` nor a *value* are specified, but *env* is set in the current
environment, the value from the current environment is added to the image.
<< if not is_quadlet >>
To remove an environment variable from the built image, use the `--unsetenv`
option.
<< endif >>

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-build.unit.5.md.in, podman-container.unit.5.md.in, create, exec, run
####> podman create, exec, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Environment=env=value [env=value ...]`
<< else >>
#### **--env**, **-e**=*env*
<< endif >>
Set environment variables.

View File

@ -1,18 +0,0 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in
####> If file is edited, make sure the changes
####> are applicable to all of those.
### `Exec=command`
Additional arguments for the container; this has exactly the same effect as passing
more arguments after a `podman run <image> <arguments>` invocation.
The format is the same as for [systemd command lines](https://www.freedesktop.org/software/systemd/man/systemd.service.html#Command%20lines),
However, unlike the usage scenario for similarly-named systemd `ExecStart=` verb
which operates on the ambient root filesystem, it is very common for container
images to have their own `ENTRYPOINT` or `CMD` metadata which this interacts with.
The default expectation for many images is that the image will include an `ENTRYPOINT`
with a default binary, and this field will add arguments to that entrypoint.
Another way to describe this is that it works the same way as the [args field in a Kubernetes pod](https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell).

View File

@ -1,16 +1,12 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `ExposeHostPort=port[/protocol]`
<< else >>
#### **--expose**=*port[/protocol]*
<< endif >>
Expose a port or a range of ports (e.g. << '**Expose=3300-3310**' if is_quadlet else '**--expose=3300-3310**' >>).
Expose a port or a range of ports (e.g. **--expose=3300-3310**).
The protocol can be `tcp`, `udp` or `sctp` and if not given `tcp` is assumed.
This option matches the EXPOSE instruction for image builds and has no effect on
the actual networking rules unless **-P/--publish-all** is used to forward to all
exposed ports from random host ports. To forward specific ports from the host
into the container use the << '**PublishPort=**' if is_quadlet else '**-p/--publish**' >> option instead.
into the container use the **-p/--publish** option instead.

View File

@ -1,31 +1,16 @@
####> This option file is used in:
####> podman build, podman-build.unit.5.md.in, farm build
####> podman build, farm build
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `File=Containerfile`
<< else >>
#### **--file**, **-f**=*Containerfile*
<< endif >>
Specifies a Containerfile which contains instructions for building the image,
either a local file or an **http** or **https** URL. If more than one
Containerfile is specified, *FROM* instructions are only be accepted from the
last specified file.
<< if is_quadlet >>
Note that for a given relative path to a Containerfile, or when using a `http(s)://` URL, you also must set
`SetWorkingDirectory=` in order for `podman build` to find a valid context directory for the
resources specified in the Containerfile.
Note that setting a `File=` field is mandatory for a `.build` file, unless `SetWorkingDirectory` (or
a `WorkingDirectory` in the `Service` group) has also been set.
<< else >>
If a build context is not specified, and at least one Containerfile is a
local file, the directory in which it resides is used as the build
context.
<< endif >>
Specifying the option << 'File=-' if is_quadlet else '`-f -`' >> causes
the Containerfile contents to be read from stdin.
Specifying the option `-f -` causes the Containerfile contents to be read from stdin.

View File

@ -1,11 +1,7 @@
####> This option file is used in:
####> podman build, podman-build.unit.5.md.in, farm build
####> podman build, farm build
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `ForceRM=`
<< else >>
#### **--force-rm**
<< endif >>
Always remove intermediate containers after a build, even if the build fails (default true).

View File

@ -1,11 +0,0 @@
####> This option file is used in:
####> podman kube down
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `KubeDownForce=true`
<< else >>
#### **--force**
<< endif >>
Remove all resources, including volumes, when calling `podman kube down`.

View File

@ -1,16 +0,0 @@
####> This option file is used in:
####> podman network create, podman-network.unit.5.md.in
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Gateway=ip`
<< else >>
#### **--gateway**=*ip*
<< endif >>
Define a gateway for the subnet. To provide a gateway address, a
*subnet* option is required. Can be specified multiple times.
<< if not is_quadlet >>
The argument order of the **--subnet**, **--gateway** and **--ip-range** options must match.
<< endif >>

View File

@ -1,19 +1,12 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, podman-pod.unit.5.md.in, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `GIDMap=[flags]container_uid:from_uid[:amount]`
<< else >>
#### **--gidmap**=*[flags]container_uid:from_uid[:amount]*
<< endif >>
Run the container in a new user namespace using the supplied GID mapping. This
option conflicts with the << '**UserNS=**' if is_quadlet else '**--userns**' >> and
<< '**SubGIDMap=**' if is_quadlet else '**--subgidname**' >> options. This
option conflicts with the **--userns** and **--subgidname** options. This
option provides a way to map host GIDs to container GIDs in the same way as
__--uidmap__ maps host UIDs to container UIDs. For details see __--uidmap__.
Note: the << '**GIDMap=**' if is_quadlet else '**--gidmap**' >> option cannot be
called in conjunction with the << '**Pod=**' if is_quadlet else '**--pod**' >> option as
a gidmap cannot be set on the container level when in a pod.
Note: the **--gidmap** option cannot be called in conjunction with the **--pod** option as a gidmap cannot be set on the container level when in a pod.

View File

@ -1,15 +0,0 @@
####> This option file is used in:
####> podman podman-build.unit.5.md.in, podman-container.unit.5.md.in, podman-image.unit.5.md.in, podman-kube.unit.5.md.in, podman-network.unit.5.md.in, podman-pod.unit.5.md.in, podman-volume.unit.5.md.in
####> If file is edited, make sure the changes
####> are applicable to all of those.
### `GlobalArgs=`
This key contains a list of arguments passed directly after the `podman` command in the generated
file. It can be used to access Podman features otherwise unsupported by the generator. Since the
generator is unaware of what unexpected interactions can be caused by these arguments, it is not
recommended to use this option.
The format of this is a space separated list of arguments, which can optionally be individually
escaped to allow inclusion of whitespace and other control characters.
This key can be listed multiple times.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman build, podman-build.unit.5.md.in, podman-container.unit.5.md.in, create, farm build, run
####> podman build, create, farm build, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `GroupAdd=group | keep-groups`
<< else >>
#### **--group-add**=*group* | *keep-groups*
<< endif >>
Assign additional groups to the primary user running within the container process.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run, update
####> podman create, run, update
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `HealthCmd="command"`
<< else >>
#### **--health-cmd**=*"command"* | *'["command", "arg1", ...]'*
<< endif >>
Set or alter a healthcheck command for a container. The command is a command to be executed inside the
container that determines the container health. The command is required for other healthcheck options

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run, update
####> podman create, run, update
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `HealthInterval=interval`
<< else >>
#### **--health-interval**=*interval*
<< endif >>
Set an interval for the healthchecks. An _interval_ of **disable** results in no automatic timer setup. The default is **30s**.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run, update
####> podman create, run, update
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `HealthLogDestination=directory_path`
<< else >>
#### **--health-log-destination**=*directory_path*
<< endif >>
Set the destination of the HealthCheck log. Directory path, local or events_logger (local use container state file) (Default: local)

View File

@ -1,11 +1,7 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run, update
####> podman create, run, update
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `HealthMaxLogCount=number`
<< else >>
#### **--health-max-log-count**=*number of stored logs*
<< endif >>
Set maximum number of attempts in the HealthCheck log file. ('0' value means an infinite number of attempts in the log file) (Default: 5 attempts)

View File

@ -1,11 +1,7 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run, update
####> podman create, run, update
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `HealthMaxLogSize=size`
<< else >>
#### **--health-max-log-size**=*size of stored logs*
<< endif >>
Set maximum length in characters of stored HealthCheck log. ("0" value means an infinite log length) (Default: 500 characters)

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run, update
####> podman create, run, update
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `HealthOnFailure=action`
<< else >>
#### **--health-on-failure**=*action*
<< endif >>
Action to take once the container transitions to an unhealthy state. The default is **none**.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run, update
####> podman create, run, update
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `HealthRetries=retries`
<< else >>
#### **--health-retries**=*retries*
<< endif >>
The number of retries allowed before a healthcheck is considered to be unhealthy. The default value is **3**.

View File

@ -1,23 +1,16 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run, update
####> podman create, run, update
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `HealthStartPeriod=period`
<< else >>
#### **--health-start-period**=*period*
<< endif >>
The initialization time needed for a container to bootstrap. The value can be expressed in time format like
**2m3s**. The default value is **0s**.
Note: The health check command is executed as soon as a container is started, if the health check is successful
the container's health state will be updated to `healthy`. However, if the health check fails, the health state will
stay as `starting` until either the health check is successful or until
the << '`HealthStartPeriod=`' if is_quadlet else '`--health-start-period`' >> time is over. If the
health check command fails after the << '`HealthStartPeriod=`' if is_quadlet else '`--health-start-period`' >>
time is over, the health state will be updated to `unhealthy`.
The health check command is executed periodically based on the value of
<< '`HealthInternal=`' if is_quadlet else '`--health-interval`' >>.
stay as `starting` until either the health check is successful or until the `--health-start-period` time is over. If the
health check command fails after the `--health-start-period` time is over, the health state will be updated to `unhealthy`.
The health check command is executed periodically based on the value of `--health-interval`.
Note: This parameter will overwrite related healthcheck configuration from the image.

View File

@ -1,16 +1,11 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run, update
####> podman create, run, update
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `HealthStartupCmd="command"`
<< else >>
#### **--health-startup-cmd**=*"command"* | *'["command", "arg1", ...]'*
<< endif >>
Set a startup healthcheck command for a container. This command is executed inside the container and is used to gate the regular
healthcheck. When the startup command succeeds, the regular healthcheck begins and the startup healthcheck ceases. Optionally,
if the command fails for a set number of attempts, the container is restarted. A startup healthcheck can be used to ensure that
containers with an extended startup period are not marked as unhealthy until they are fully started. Startup healthchecks can only be
used when a regular healthcheck (from the container's image or the
<< '`HealthCmd=`' if is_quadlet else '`--health-cmd`' >> option) is also set.
used when a regular healthcheck (from the container's image or the **--health-cmd** option) is also set.

View File

@ -1,11 +1,7 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run, update
####> podman create, run, update
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `HealthStartupInterval=interval`
<< else >>
#### **--health-startup-interval**=*interval*
<< endif >>
Set an interval for the startup healthcheck. An _interval_ of **disable** results in no automatic timer setup. The default is **30s**.

View File

@ -1,11 +1,7 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run, update
####> podman create, run, update
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `HealthStartupRetries=retries`
<< else >>
#### **--health-startup-retries**=*retries*
<< endif >>
The number of attempts allowed before the startup healthcheck restarts the container. If set to **0**, the container is never restarted. The default is **0**.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run, update
####> podman create, run, update
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `HealthStartupSuccess=retries`
<< else >>
#### **--health-startup-success**=*retries*
<< endif >>
The number of successful runs required before the startup healthcheck succeeds and the regular healthcheck begins. A value
of **0** means that any success begins the regular healthcheck. The default is **0**.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run, update
####> podman create, run, update
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `HealthStartupTimeout=timeout`
<< else >>
#### **--health-startup-timeout**=*timeout*
<< endif >>
The maximum time a startup healthcheck command has to complete before it is marked as failed. The value can be expressed in a time
format like **2m3s**. The default value is **30s**.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run, update
####> podman create, run, update
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `HealthTimeout=timeout`
<< else >>
#### **--health-timeout**=*timeout*
<< endif >>
The maximum time allowed to complete the healthcheck before an interval is considered failed. Like start-period, the
value can be expressed in a time format such as **1m22s**. The default value is **30s**.

View File

@ -1,17 +1,13 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, podman-pod.unit.5.md.in, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `HostName=name`
<< else >>
#### **--hostname**, **-h**=*name*
<< endif >>
Set the container's hostname inside the container.
This option can only be used with a private UTS namespace `--uts=private`
(default). If << '`Pod=`' if is_quadlet else '`--pod`' >> is given and the pod shares the same UTS namespace
(default). If `--pod` is given and the pod shares the same UTS namespace
(default), the pod's hostname is used. The given hostname is also added to the
`/etc/hosts` file using the container's primary IP address (also see the
<< '**AddHost=**' if is_quadlet else '**--add-host**' >> option).
**--add-host** option).

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman build, podman-container.unit.5.md.in, create, farm build, run
####> podman build, create, farm build, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `HttpProxy=`
<< else >>
#### **--http-proxy**
<< endif>>
By default proxy environment variables are passed into the container if set
for the Podman process. This can be disabled by setting the value to **false**.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `RunInit=`
<< else >>
#### **--init**
<< endif >>
Run an init inside the container that forwards signals and reaps processes.
The container-init binary is mounted at `/run/podman-init`.

View File

@ -1,13 +0,0 @@
####> This option file is used in:
####> podman network create, podman-network.unit.5.md.in
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `InterfaceName=name`
<< else >>
#### **--interface-name**=*name*
<< endif >>
This option maps the *network_interface* option in the network config, see **podman network inspect**.
Depending on the driver, this can have different effects; for `bridge`, it uses the bridge interface name.
For `macvlan` and `ipvlan`, it is the parent device on the host. It is the same as `--opt parent=...`.

View File

@ -1,25 +0,0 @@
####> This option file is used in:
####> podman network create, podman-network.unit.5.md.in
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Internal=true`
<< else >>
#### **--internal**
<< endif >>
Restrict external access of this network when using a `bridge` network. Note when using the CNI backend
DNS will be automatically disabled, see **--disable-dns**.
When using the `macvlan` or `ipvlan` driver with this option no default route will be added to the container.
Because it bypasses the host network stack no additional restrictions can be set by podman and if a
privileged container is run it can set a default route themselves. If this is a concern then the
container connections should be blocked on your actual network gateway.
Using the `bridge` driver with this option has the following effects:
- Global IP forwarding sysctls will not be changed in the host network namespace.
- IP forwarding is disabled on the bridge interface instead of setting up a firewall.
- No default route will be added to the container.
In all cases, aardvark-dns will only resolve container names with this option enabled.
Other queries will be answered with `NXDOMAIN`.

View File

@ -1,17 +0,0 @@
####> This option file is used in:
####> podman network create, podman-network.unit.5.md.in
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `IPRange=ip`
<< else >>
#### **--ip-range**=*range*
<< endif >>
Allocate container IP from a range. The range must be a either a complete subnet in CIDR notation or be in
the `<startIP>-<endIP>` syntax which allows for a more flexible range compared to the CIDR subnet.
The *ip-range* option must be used with a *subnet* option. Can be specified multiple times.
<< if not is_quadlet >>
The argument order of the **--subnet**, **--gateway** and **--ip-range** options must match.
<< endif >>

View File

@ -1,20 +1,12 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, pod create, podman-pod.unit.5.md.in, run
####> podman create, pod create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `IP=ipv4`
<< else >>
#### **--ip**=*ipv4*
<< endif >>
Specify a static IPv4 address for the <<container|pod>>, for example **10.88.64.128**.
This option can only be used if the <<container|pod>> is joined to only a single network - i.e.,
<< '**Network=network-name**' if is_quadlet else '**--network=network-name**' >> is used at most once -
and if the <<container|pod>> is not joining another container's network namespace via
<< '**Network=container:_id_**' if is_quadlet else '**--network=container:_id_**' >>.
This option can only be used if the <<container|pod>> is joined to only a single network - i.e., **--network=network-name** is used at most once -
and if the <<container|pod>> is not joining another container's network namespace via **--network=container:_id_**.
The address must be within the network's IP address pool (default **10.88.0.0/16**).
To specify multiple static IP addresses per <<container|pod>>, set multiple networks using
the << '**Network=**' if is_quadlet else '**--network' >> option with a static IP address
specified for each using the `ip` mode for that option.
To specify multiple static IP addresses per <<container|pod>>, set multiple networks using the **--network** option with a static IP address specified for each using the `ip` mode for that option.

View File

@ -1,20 +1,12 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, pod create, podman-pod.unit.5.md.in, run
####> podman create, pod create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `IP6=ipv6`
<< else >>
#### **--ip6**=*ipv6*
<< endif >>
Specify a static IPv6 address for the <<container|pod>>, for example **fd46:db93:aa76:ac37::10**.
This option can only be used if the <<container|pod>> is joined to only a single network - i.e.,
<< '**Network=network-name**' if is_quadlet else '**--network=network-name**' >> is used at most once -
and if the <<container|pod>> is not joining another container's network namespace via
<< '**Network=container:_id_**' if is_quadlet else '**--network=container:_id_**' >>.
This option can only be used if the <<container|pod>> is joined to only a single network - i.e., **--network=network-name** is used at most once -
and if the <<container|pod>> is not joining another container's network namespace via **--network=container:_id_**.
The address must be within the network's IPv6 address pool.
To specify multiple static IPv6 addresses per <<container|pod>>, set multiple networks using the
<< '**Network=**' if is_quadlet else '**--network' >> option with a static IPv6 address
specified for each using the `ip6` mode for that option.
To specify multiple static IPv6 addresses per <<container|pod>>, set multiple networks using the **--network** option with a static IPv6 address specified for each using the `ip6` mode for that option.

View File

@ -1,22 +0,0 @@
####> This option file is used in:
####> podman network create, podman-network.unit.5.md.in
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `IPAMDriver=driver`
<< else >>
#### **--ipam-driver**=*driver*
<< endif >>
Set the ipam driver (IP Address Management Driver) for the network. When unset podman chooses an
ipam driver automatically based on the network driver.
Valid values are:
- `dhcp`: IP addresses are assigned from a dhcp server on the network. When using the netavark backend
the `netavark-dhcp-proxy.socket` must be enabled in order to start the dhcp-proxy when a container is
started, for CNI use the `cni-dhcp.socket` unit instead.
- `host-local`: IP addresses are assigned locally.
- `none`: No ip addresses are assigned to the interfaces.
View the driver in the **podman network inspect** output under the `ipam_options` field.

View File

@ -1,11 +0,0 @@
####> This option file is used in:
####> podman network create, podman-network.unit.5.md.in
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `IPv6=true`
<< else >>
#### **--ipv6**
<< endif >>
Enable IPv6 (Dual Stack) networking. If no subnets are given, it allocates an ipv4 and an ipv6 subnet.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman build, podman-build.unit.5.md.in, farm build
####> podman build, farm build
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Label=label`
<< else >>
#### **--label**=*label*
<< endif >>
Add an image *label* (e.g. label=*value*) to the image metadata. Can be used
multiple times.

View File

@ -1,11 +1,7 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, pod clone, pod create, podman-pod.unit.5.md.in, run
####> podman create, pod clone, pod create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Label=key=value [key=value ...]`
<< else >>
#### **--label**, **-l**=*key=value*
<< endif >>
Add metadata to a <<container|pod>>.

View File

@ -1,11 +0,0 @@
####> This option file is used in:
####> podman network create, podman-network.unit.5.md.in
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Label=key=value [key=value ...]`
<< else >>
#### **--label**=*key=value*
<< endif >>
Set one or more OCI labels on the network.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, podman-kube.unit.5.md.in, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `LogDriver=driver`
<< else >>
#### **--log-driver**=*driver*
<< endif >>
Logging driver for the container. Currently available options are **k8s-file**, **journald**, **none**, **passthrough** and **passthrough-tty**, with **json-file** aliased to **k8s-file** for scripting compatibility. (Default **journald**).

View File

@ -1,24 +1,20 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, kube play, run
####> podman create, kube play, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `LogOpt=name=value`
<< else >>
#### **--log-opt**=*name=value*
<< endif >>
Logging driver specific options.
Set custom logging configuration. The following *name*s are supported:
**path**: specify a path to the log file
(e.g. << '**LogOpt=path=/var/log/container/mycontainer.json**' if is_quadlet else '**--log-opt path=/var/log/container/mycontainer.json**' >>);
(e.g. **--log-opt path=/var/log/container/mycontainer.json**);
**max-size**: specify a max size of the log file
(e.g. << '**LogOpt=max-size=10mb**' if is_quadlet else '**--log-opt max-size=10mb**' >>);
(e.g. **--log-opt max-size=10mb**);
**tag**: specify a custom log tag for the container
(e.g. << '**LogOpt=tag="{{.ImageName}}"**' if is_quadlet else '**--log-opt tag="{{.ImageName}}"**' >>.
(e.g. **--log-opt tag="{{.ImageName}}"**.
It supports the same keys as **podman inspect --format**.
This option is currently supported only by the **journald** log driver.

View File

@ -1,18 +1,14 @@
####> This option file is used in:
####> podman build, container clone, podman-container.unit.5.md.in, create, farm build, pod clone, pod create, run, update
####> podman build, container clone, create, farm build, pod clone, pod create, run, update
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Memory=number[unit]`
<< else >>
#### **--memory**, **-m**=*number[unit]*
<< endif >>
Memory limit. A _unit_ can be **b** (bytes), **k** (kibibytes), **m** (mebibytes), or **g** (gibibytes).
Allows the memory available to a container to be constrained. If the host
supports swap memory, then the << '**Memory=**' if is_quadlet else '**--m**' >> memory setting can be larger than physical
RAM. If a limit of 0 is specified (not using << '**Memory=**' if is_quadlet else '**--m**' >>), the container's memory is
supports swap memory, then the **-m** memory setting can be larger than physical
RAM. If a limit of 0 is specified (not using **-m**), the container's memory is
not limited. The actual limit may be rounded up to a multiple of the operating
system's page size (the value is very large, that's millions of trillions).

View File

@ -1,13 +0,0 @@
####> This option file is used in:
####> podman podman-build.unit.5.md.in, podman-container.unit.5.md.in, podman-image.unit.5.md.in, podman-kube.unit.5.md.in, podman-network.unit.5.md.in, podman-pod.unit.5.md.in, podman-volume.unit.5.md.in
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `ContainersConfModule=module`
<< else >>
#### **--module**=*module*
<< endif >>
Load the specified containers.conf(5) module.
This option can be listed multiple times.

View File

@ -1,24 +1,11 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Mount=type=TYPE,TYPE-SPECIFIC-OPTION[,...]`
<< else >>
#### **--mount**=*type=TYPE,TYPE-SPECIFIC-OPTION[,...]*
<< endif >>
Attach a filesystem mount to the container.
<< if is_quadlet >>
Special cases:
* For `type=volume`, if `source` ends with `.volume`, the Podman named volume generated by the corresponding `.volume` file is used.
* For `type=image`, if `source` ends with `.image`, the image generated by the corresponding `.image` file is used.
In both cases, the generated systemd service will contain a dependency on the service generated for the corresponding unit. Note: the corresponding `.volume` or `.image` file must exist.
<< endif >>
Current supported mount TYPEs are **artifact**, **bind**, **devpts**, **glob**, **image**, **ramfs**, **tmpfs** and **volume**.
Options common to all mount types:

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `ContainerName=name`
<< else >>
#### **--name**=*name*
<< endif >>
Assign a name to the container.
@ -17,9 +13,8 @@ The operator can identify a container in three ways:
- Name (“jonah”).
Podman generates a UUID for each container, and if no name is assigned to the
container using << '**ContainerName=**' if is_quadlet else '**--name**' >>,
Podman generates a random string name. The name can
container using **--name**, Podman generates a random string name. The name can
be useful as a more human-friendly way to identify containers. This works for
both background and foreground containers. The container's name is also added
to the `/etc/hosts` file using the container's primary IP address (also see the
<< '**AddHost=**' if is_quadlet else '**--add-host**' >> option).
**--add-host** option).

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, pod create, podman-pod.unit.5.md.in, run
####> podman create, pod create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `NetworkAlias=alias`
<< else >>
#### **--network-alias**=*alias*
<< endif >>
Add a network-scoped alias for the <<container|pod>>, setting the alias for all networks that the container joins. To set a
name only for a specific network, use the alias option as described under the **--network** option.

View File

@ -1,21 +1,11 @@
####> This option file is used in:
####> podman build, podman-build.unit.5.md.in, farm build
####> podman build, farm build
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Network=mode`
<< else >>
#### **--network**=*mode*, **--net**
<< endif >>
Sets the configuration for network namespaces when handling `RUN` instructions.
<< if is_quadlet >>
Special case:
* If the `name` of the network ends with `.network`, Quadlet will look for the corresponding `.network` Quadlet unit. If found, Quadlet will use the name of the Network set in the Unit, otherwise, `systemd-$name` is used. The generated systemd service contains a dependency on the service unit generated for that `.network` unit, or on `$name-network.service` if the `.network` unit is not found. Note: the corresponding `.network` file must exist.
<< endif >>
Valid _mode_ values are:
- **none**: no networking.

View File

@ -1,28 +1,11 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, kube play, podman-kube.unit.5.md.in, pod create, podman-pod.unit.5.md.in, run
####> podman create, kube play, pod create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Network=mode`
<< else >>
#### **--network**=*mode*, **--net**
<< endif >>
Set the network mode for the <<container|pod>>.
<< if is_quadlet >>
Special cases:
* If the `name` of the network ends with `.network`, a Podman network called
`systemd-$name` is used, and the generated systemd service contains
a dependency on the `$name-network.service`. Such a network can be automatically
created by using a `$name.network` Quadlet file. Note: the corresponding `.network` file must exist.
* If the `name` ends with `.container`,
the container will reuse the network stack of another container created by `$name.container`.
The generated systemd service contains a dependency on `$name.service`. Note: the corresponding `.container` file must exist.
<< endif >>
Valid _mode_ values are:
- **bridge[:OPTIONS,...]**: Create a network stack on the default bridge. This is the default for rootful containers. It is possible to specify these additional options:

View File

@ -1,40 +0,0 @@
####> This option file is used in:
####> podman network create, podman-network.unit.5.md.in
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Options=option`
<< else >>
#### **--opt**, **-o**=*option*
<< endif >>
Set driver specific options.
All drivers accept the `mtu`, `metric`, `no_default_route` and options.
- `mtu`: Sets the Maximum Transmission Unit (MTU) and takes an integer value.
- `metric` Sets the Route Metric for the default route created in every container joined to this network. Accepts a positive integer value. Can only be used with the Netavark network backend.
- `no_default_route`: If set to 1, Podman will not automatically add a default route to subnets. Routes can still be added
manually by creating a custom route using `--route`.
Additionally the `bridge` driver supports the following options:
- `vlan`: This option assign VLAN tag and enables vlan\_filtering. Defaults to none.
- `isolate`: This option isolates networks by blocking traffic between those that have this option enabled.
- `com.docker.network.bridge.name`: This option assigns the given name to the created Linux Bridge
- `com.docker.network.driver.mtu`: Sets the Maximum Transmission Unit (MTU) and takes an integer value.
- `vrf`: This option assigns a VRF to the bridge interface. It accepts the name of the VRF and defaults to none. Can only be used with the Netavark network backend.
- `mode`: This option sets the specified bridge mode on the interface. Defaults to `managed`. Supported values:
- `managed`: Podman creates and deletes the bridge and changes sysctls of it. It adds firewall rules to masquerade outgoing traffic, as well as setup port forwarding for incoming traffic using DNAT.
- `unmanaged`: Podman uses an existing bridge. It must exist by the time you want to start a container which uses the network. There will be no NAT or port forwarding, even if such options were passed while creating the container.
The `macvlan` and `ipvlan` driver support the following options:
- `parent`: The host device which is used for the macvlan interface. Defaults to the default route interface.
- `mode`: This option sets the specified ip/macvlan mode on the interface.
- Supported values for `macvlan` are `bridge`, `private`, `vepa`, `passthru`. Defaults to `bridge`.
- Supported values for `ipvlan` are `l2`, `l3`, `l3s`. Defaults to `l2`.
Additionally the `macvlan` driver supports the `bclim` option:
- `bclim`: Set the threshold for broadcast queueing. Must be a 32 bit integer. Setting this value to `-1` disables broadcast queueing altogether.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman create, podman-image.unit.5.md.in, pull, run
####> podman create, pull, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `OS=os`
<< else >>
#### **--os**=*OS*
<< endif >>
Override the OS, defaults to hosts, of the image to be pulled. For example, `windows`.
Unless overridden, subsequent lookups of the same image in the local storage matches this OS, regardless of the host.

View File

@ -1,11 +1,7 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run, update
####> podman create, run, update
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `PidsLimit=limit`
<< else >>
#### **--pids-limit**=*limit*
<< endif >>
Tune the container's pids limit. Set to **-1** to have unlimited pids for the container. The default is **2048** on systems that support "pids" cgroup controller.

View File

@ -1,15 +0,0 @@
####> This option file is used in:
####> podman podman-build.unit.5.md.in, podman-container.unit.5.md.in, podman-image.unit.5.md.in, podman-kube.unit.5.md.in, podman-network.unit.5.md.in, podman-pod.unit.5.md.in, podman-volume.unit.5.md.in
####> If file is edited, make sure the changes
####> are applicable to all of those.
### `PodmanArgs=`
This key contains a list of arguments passed directly to the end of the `podman` command
in the generated file. It can be used to access Podman features otherwise unsupported
by the generator. Since the generator is unaware of what unexpected interactions can be
caused by these arguments, it is not recommended to use this option.
The format of this is a space separated list of arguments, which can optionally be individually
escaped to allow inclusion of whitespace and other control characters.
This key can be listed multiple times.

View File

@ -1,16 +0,0 @@
####> This option file is used in:
####> podman podman-image.unit.5.md.in, pull
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Policy=always`
<< else >>
#### **--policy**
<< endif >>
Pull image policy. The default is **always**.
- `always`: Always pull the image and throw an error if the pull fails.
- `missing`: Only pull the image if it could not be found in the local containers storage. Throw an error if no image could be found and the pull fails.
- `never`: Never pull the image; only use the local version. Throw an error if the image is not present locally.
- `newer`: Pull if the image on the registry is newer than the one in the local containers storage. An image is considered to be newer when the digests are different. Comparing the time stamps is prone to errors. Pull errors are suppressed if a local image was found.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, podman-kube.unit.5.md.in, pod create, podman-pod.unit.5.md.in, run
####> podman create, pod create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `PublishPort=[[ip:][hostPort]:]containerPort[/protocol]`
<< else >>
#### **--publish**, **-p**=*[[ip:][hostPort]:]containerPort[/protocol]*
<< endif >>
Publish a container's port, or range of ports,<<| within this pod>> to the host.

View File

@ -2,11 +2,7 @@
####> podman build, farm build
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Pull=policy`
<< else >>
#### **--pull**=*policy*
<< endif >>
Pull image policy. The default is **missing**.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-build.unit.5.md.in, podman-container.unit.5.md.in, create, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Pull=policy`
<< else >>
#### **--pull**=*policy*
<< endif >>
Pull image policy. The default is **missing**.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `ReadOnlyTmpfs=`
<< else >>
#### **--read-only-tmpfs**
<< endif >>
When running --read-only containers, mount a read-write tmpfs on _/dev_, _/dev/shm_, _/run_, _/tmp_, and _/var/tmp_. The default is **true**.
@ -17,17 +13,14 @@ When running --read-only containers, mount a read-write tmpfs on _/dev_, _/dev/s
| false | false | r/w | r/w |
| false | true | r/w | r/w |
When << '**ReadOnly=true**' if is_quadlet else '**--read-only==true**' >> and
<< '**ReadOnlyTmpfs=true**' if is_quadlet else '**--read-only-tmpfs==true**' >> additional tmpfs are mounted on
When **--read-only=true** and **--read-only-tmpfs=true** additional tmpfs are mounted on
the /tmp, /run, and /var/tmp directories.
When << '**ReadOnly=true**' if is_quadlet else '**--read-only==true**' >> and
<< '**ReadOnlyTmpfs=false**' if is_quadlet else '**--read-only-tmpfs==false**' >> /dev and /dev/shm are marked
When **--read-only=true** and **--read-only-tmpfs=false** /dev and /dev/shm are marked
Read/Only and no tmpfs are mounted on /tmp, /run and /var/tmp. The directories
are exposed from the underlying image, meaning they are read-only by default.
This makes the container totally read-only. No writable directories exist within
the container. In this mode writable directories need to be added via external
volumes or mounts.
By default, when << '**ReadOnly=false**' if is_quadlet else '**--read-only==false**' >> , the /dev and /dev/shm are read/write, and the /tmp, /run, and /var/tmp are read/write directories from the container image.
By default, when **--read-only=false**, the /dev and /dev/shm are read/write, and the /tmp, /run, and /var/tmp are read/write directories from the container image.

View File

@ -1,15 +1,10 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `ReadOnly=`
<< else >>
#### **--read-only**
<< endif >>
Mount the container's root filesystem as read-only.
By default, container root filesystems are writable, allowing processes
to write files anywhere. By specifying the << '**ReadOnly=**' if is_quadlet else '**--read-only**' >> flag,
the containers root filesystem are mounted read-only prohibiting any writes.
to write files anywhere. By specifying the **--read-only** flag, the containers root filesystem are mounted read-only prohibiting any writes.

View File

@ -19,4 +19,4 @@ Podman provides a systemd unit file, podman-restart.service, which restarts cont
When running containers in systemd services, use the restart functionality provided by systemd.
In other words, do not use this option in a container unit, instead set the `Restart=` systemd directive in the `[Service]` section.
See **podman-quadlet**(7) and **systemd.service**(5).
See **podman-systemd.unit**(5) and **systemd.service**(5).

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman artifact pull, artifact push, build, podman-build.unit.5.md.in, podman-container.unit.5.md.in, create, farm build, podman-image.unit.5.md.in, pull, push, run
####> podman artifact pull, artifact push, build, create, farm build, pull, push, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `RetryDelay=duration`
<< else >>
#### **--retry-delay**=*duration*
<< endif >>
Duration of delay between retry attempts when pulling or pushing images between
the registry and local storage in case of failure. The default is to start at two seconds and then exponentially back off. The delay is used when this value is set, and no exponential back off occurs.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman artifact pull, artifact push, build, podman-build.unit.5.md.in, podman-container.unit.5.md.in, create, farm build, podman-image.unit.5.md.in, pull, push, run
####> podman artifact pull, artifact push, build, create, farm build, pull, push, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Retry=attempts`
<< else >>
#### **--retry**=*attempts*
<< endif >>
Number of times to retry pulling or pushing images between the registry and
local storage in case of failure. Default is **3**.

View File

@ -1,19 +1,11 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Rootfs=`
<< else >>
#### **--rootfs**
<< endif >>
If specified, the first argument refers to an exploded container on the file system.
<< if is_quadlet >>
This option conflicts with the `Image` option.
<< endif >>
This is useful to run a container without requiring any image management, the rootfs
of the container is assumed to be managed externally.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman build, podman-build.unit.5.md.in, farm build
####> podman build, farm build
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Secret=id=id[,src=envOrFile][,env=ENV][,type=file | env]`
<< else >>
#### **--secret**=**id=id[,src=*envOrFile*][,env=*ENV*][,type=*file* | *env*]**
<< endif >>
Pass secret information to be used in the Containerfile for building images
in a safe way that will not end up stored in the final image, or be seen in other stages.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Secret=secret[,opt=opt ...]`
<< else >>
#### **--secret**=*secret[,opt=opt ...]*
<< endif >>
Give the container access to a secret. Can be specified multiple times.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman build, podman-container.unit.5.md.in, create, farm build, pod clone, pod create, podman-pod.unit.5.md.in, run
####> podman build, create, farm build, pod clone, pod create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `ShmSize=number[unit]`
<< else >>
#### **--shm-size**=*number[unit]*
<< endif >>
Size of _/dev/shm_. A _unit_ can be **b** (bytes), **k** (kibibytes), **m** (mebibytes), or **g** (gibibytes).
If the unit is omitted, the system uses bytes. If the size is omitted, the default is **64m**.

View File

@ -1,11 +1,7 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `StopSignal=signal`
<< else >>
#### **--stop-signal**=*signal*
<< endif >>
Signal to stop a container. Default is **SIGTERM**.

View File

@ -1,16 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, run
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `StopTimeout=seconds`
<< else >>
#### **--stop-timeout**=*seconds*
<< endif >>
Timeout to stop a container. Default is **10**.
Remote connections use local containers.conf for defaults.
<< if is_quadlet >>
Note, this value should be lower than the actual systemd unit timeout to make sure the podman rm command is not killed by systemd.
<< endif >>

View File

@ -1,13 +1,9 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, pod clone, pod create, podman-pod.unit.5.md.in, run
####> podman create, pod clone, pod create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `SubGIDMap=name`
<< else >>
#### **--subgidname**=*name*
<< endif >>
Run the container in a new user namespace using the map with _name_ in the _/etc/subgid_ file.
If running rootless, the user needs to have the right to use the mapping. See **subgid**(5).
This flag conflicts with << '**UserNS=**' if is_quadlet else '**--userns**' >> and << '**GIDMap=**' if is_quadlet else '**--gidmap**' >>.
This flag conflicts with **--userns** and **--gidmap**.

View File

@ -1,15 +0,0 @@
####> This option file is used in:
####> podman network create, podman-network.unit.5.md.in
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Subnet=subnet`
<< else >>
#### **--subnet**=*subnet*
<< endif >>
The subnet in CIDR notation. Can be specified multiple times to allocate more than one subnet for this network.
<< if not is_quadlet >>
The argument order of the **--subnet**, **--gateway** and **--ip-range** options must match.
<< endif >>
This is useful to set a static ipv4 and ipv6 subnet.

View File

@ -1,13 +1,9 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, pod clone, pod create, podman-pod.unit.5.md.in, run
####> podman create, pod clone, pod create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `SubUIDMap=name`
<< else >>
#### **--subuidname**=*name*
<< endif >>
Run the container in a new user namespace using the map with _name_ in the _/etc/subuid_ file.
If running rootless, the user needs to have the right to use the mapping. See **subuid**(5).
This flag conflicts with << '**UserNS=**' if is_quadlet else '**--userns**' >> and << '**UIDMap=**' if is_quadlet else '**--uidmap**' >>.
This flag conflicts with **--userns** and **--uidmap**.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman podman-container.unit.5.md.in, create, pod clone, pod create, run
####> podman create, pod clone, pod create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Sysctl=name=value`
<< else >>
#### **--sysctl**=*name=value*
<< endif >>
Configure namespaced kernel parameters <<at runtime|for all containers in the pod>>.
@ -22,7 +18,6 @@ For the IPC namespace, the following sysctls are allowed:
- kernel.shm_rmid_forced
- Sysctls beginning with fs.mqueue.\*
Note: <<if using the **--ipc=host** option|if the ipc namespace is not shared within the pod>>, the above sysctls are not allowed.
For the network namespace, only sysctls beginning with net.\* are allowed.

View File

@ -1,12 +1,8 @@
####> This option file is used in:
####> podman build, podman-build.unit.5.md.in, farm build
####> podman build, farm build
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `ImageTag=imageName`
<< else >>
#### **--tag**, **-t**=*imageName*
<< endif >>
Specifies the name which is assigned to the resulting image if the build process completes successfully.
If _imageName_ does not include a registry name, the registry name *localhost* is prepended to the image name.

View File

@ -1,11 +1,7 @@
####> This option file is used in:
####> podman build, podman-build.unit.5.md.in, farm build
####> podman build, farm build
####> If file is edited, make sure the changes
####> are applicable to all of those.
<< if is_quadlet >>
### `Target=stageName`
<< else >>
#### **--target**=*stageName*
<< endif >>
Set the target build stage to build. When building a Containerfile with multiple build stages, --target can be used to specify an intermediate build stage by name as the final stage for the resulting image. Commands after the target stage is skipped.

Some files were not shown because too many files have changed in this diff Show More