
In each options/foo.md, keep a list of where the option is used. This will be valuable to anyone making future edits, and to those reviewing those edits. This may be a controversial commit, because those crossref lists are autogenerated as a side effect of the script that reads them. It definitely violates POLA. And one day, some kind person will reconcile (e.g.) --label, using it in more man pages, and maybe forget to git-commit the rewritten file, and CI will fail. I think this is a tough tradeoff, but worth doing. Without this, it's much too easy for someone to change an option file in a way that renders it inapplicable/misleading for some podman commands. Signed-off-by: Ed Santiago <santiago@redhat.com>
1.1 KiB
####> This option file is used in: ####> podman create, pod create, run ####> If you edit this file, make sure your changes ####> are applicable to all of those.
--publish, -p=[[ip:][hostPort]:]containerPort[/protocol]
Publish a container's port, or range of ports,<<| within this pod>> to the host.
Both hostPort and containerPort can be specified as a range of ports. When specifying ranges for both, the number of container ports in the range must match the number of host ports in the range.
If host IP is set to 0.0.0.0 or not set at all, the port will be bound on all IPs on the host.
By default, Podman will publish TCP ports. To publish a UDP port instead, give
udp
as protocol. To publish both TCP and UDP ports, set --publish
twice,
with tcp
, and udp
as protocols respectively. Rootful containers can also
publish ports using the sctp
protocol.
Host port does not have to be specified (e.g. podman run -p 127.0.0.1::80
).
If it is not, the container port will be randomly assigned a port on the host.
Use podman port to see the actual mapping: podman port $CONTAINER $CONTAINERPORT
.