1885 Commits

Author SHA1 Message Date
d4b3ab521d Fix up example description of podman-create.1.md.in
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2024-02-18 08:11:39 -05:00
c7537d1939 man-page xref: make nested-structure warnings fatal
Followup to:
  - #21060, where I added new struct checks (but did not make them fatal)

  - #21534, which added per-interface stats and a .Network field,
    but its documentation was slightly off

Signed-off-by: Ed Santiago <santiago@redhat.com>
2024-02-15 13:22:31 -07:00
42a78c714c Add volumes-from support using annotation in kube yaml
The reserved annotation io.podman.annotations.volumes-from is made public to let user define volumes-from to have one container mount volumes of other containers.

The annotation format is: io.podman.annotations.volumes-from/tgtCtr: "srcCtr1:mntOpts1;srcCtr2:mntOpts;..."

Fixes: containers#16819

Signed-off-by: Vikas Goel <vikas.goel@gmail.com>
2024-02-14 07:31:43 -08:00
0aa04ed8c4 Merge pull request #21612 from giuseppe/clarify-git-url
docs: clarify when a URL is treated as a git repo
2024-02-12 21:33:11 +00:00
9b7568619b Merge pull request #21533 from Luap99/podman-connections-doc
document new connection/farm storage location
2024-02-12 13:46:52 +00:00
1f8a69bc9e docs: clarify when a URL is treated as a git repo
Closes: https://github.com/containers/podman/issues/21605

[CI:DOCS] clarify podman build git repo handling

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2024-02-12 11:10:33 +01:00
a2c086c789 [CI:DOCS] fix userns.pod.md mapping table
Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
2024-02-09 15:53:34 +05:30
3495aae42b docs: resole hierarchical issues with userns parameters
Signed-off-by: paomian <xpaomian@gmail.com>
2024-02-09 14:45:05 +08:00
9011327e84 Merge pull request #21568 from joelpurra/patch-1
[CI:DOCS] Fix Quadlet Options=key=value documentation/example
2024-02-08 19:51:52 +00:00
88b994902d Merge pull request #21512 from Luap99/pasta-netname-removal
drop support for "pasta" as a network name
2024-02-08 17:17:55 +00:00
dc0d07c71f document new connection/farm storage location
The new file was not really documented, so leave some pointers on how it
works and that the new file should not be edited manually.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-02-08 18:05:32 +01:00
10265661ec Fix Quadlet Options=key=value documentation/example
Quadlet `[Network]` does not accept `Options=key` for `podman network create --opt key`. Options have to be provided in `key=value` format, where the `=` is required even though the value may be empty.

One usage example is `Options=isolate=true`. In this case, passing `netavark` an empty `isolate` value may be a valid/parseable setting: `Options=isolate=`, equivalent to `Options=isolate=false`.

This commit documents the explicit `Options=key=value` usage. Compare to `[Network]` tests, which use `key=value`.

Usage verified locally by inspecting the generated network in `/run/user/${UID}/systemd/generator/example-network.service` and `podman network inspect systemd-example` using podman v4.9.2 and netavark v1.10.2.

See

- https://docs.podman.io/en/latest/markdown/podman-systemd.unit.5.html#network-units-network
- https://github.com/containers/podman/blob/v4.9.2/test/e2e/quadlet/options.network
- https://github.com/containers/podman/blob/v4.9.2/test/e2e/quadlet/options.multiple.network
- https://github.com/containers/netavark/blob/v1.10.2/src/network/bridge.rs#L824-L833

Signed-off-by: Joel Purra <mig@joelpurra.se>
2024-02-08 17:48:36 +01:00
4fc52ed068 Merge pull request #21534 from mheon/stats_per_interface
Send container stats over API on a per-interface basis
2024-02-08 14:19:08 +00:00
4c9bd246c3 Merge pull request #21514 from Luap99/pod-inspect-output
make podman pod inspect output a json array
2024-02-08 11:31:40 +00:00
77847bd67a docs: make --seccomp=profile.json clearer
There are not only allowed syscalls, also blocked ones or handled
differently.

[CI:DOCS]

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2024-02-07 13:16:35 +01:00
6e0decbe03 Send container stats over API on a per-interface basis
This mirrors how the Docker API handles things, allowing us to be
more compatible with Docker and more verbose on the Libpod API.
Stats are given as per network interface in the container, but
still aggregated for `podman stats` and `podman pod stats`
display (so the CLI does not change, only the Libpod and Compat
APIs).

Signed-off-by: Matt Heon <mheon@redhat.com>
2024-02-06 17:05:07 -05:00
2eee3cd812 Corrected markdown documentation for --stars
The `--stars` option was incorrectly documented as meaning
the number of stars to filter by. This has been corrected
to indicate that it is the minimum number of stars to filter
by.

Tweaked wording of podman-search.md stars filter text

Signed-off-by: Kaniel Kirby <piratey7007@runbox.com>
2024-02-05 11:37:01 -06:00
35d1f12213 make podman pod inspect output a json array
Just like all the other inspect commands that accept multiple args we
should just make podman pod inspect output a json array.
This makes the code more consistent and removes the extra workaround
which was needed before to support this.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-02-05 17:26:55 +01:00
249474a84e drop support for "pasta" as a network name
The pasta network mode has been added in podman v4.4 and this causes a
conflict with named networks that could also be called "pasta". To not
break anything we had special logic to prefer the named network over the
network mode. Now with 5.0 we can break this and remove this awkward
special handling from the code.

Containers created with 4.X that use a named network pasta will also
continue to work fine, this chnage will only effect the creation of new
containers with a named network pasta and instead always used the
network mode pasta. We now also block the creation of networks with the
name "pasta".

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-02-05 13:57:24 +01:00
2818abf849 Update to runc main, removing pin to an older version
We were pinned to a specific commit to ensure that tests kept
passing. Hopefully they pass now, as we need to grab latest runc
for CVE fixes.

Also grab Buildah main to fix a build issue on FreeBSD. After a
botched manual vendor, I used Ed's treadmill script and squashed
it into this commit to make Git happy. Thanks bunches Ed.

Signed-off-by: Matt Heon <mheon@redhat.com>
2024-02-02 08:11:17 -05:00
5e64d4f021 Merge pull request #21068 from alexlarsson/quadlet-templates
Support templates in quadlet
2024-02-02 10:36:18 +00:00
74454bf59c rework system connection and farm storage
We now no longer write containers.conf, instead system connections and
farms are written to a new file called podman-connections.conf.

This is a major rework and I had to change a lot of things to get this
to compile again with my c/common changes.

It is a breaking change for users as connections/farms added before this
commit can now no longer be removed or modified directly. However because
the logic keeps reading from containers.conf the old connections can
still be used to connect to a remote host.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-01-31 15:08:41 +01:00
c41c30bedd Merge pull request #21180 from rhatdan/nvidia
Make --gpus work with nvidia gpus
2024-01-30 14:59:02 +00:00
831fd945c4 Merge pull request #21394 from jameshurst/docs-fix
[CI:DOCS] fix documentation formatting issues
2024-01-29 08:41:43 +00:00
d5bed05df7 docs: fix podman-manifest-rm header
Signed-off-by: James Hurst <james@jameshurst.ca>
2024-01-27 19:03:35 -05:00
3592b56c37 docs: fix unclosed code block
Signed-off-by: James Hurst <james@jameshurst.ca>
2024-01-27 19:03:35 -05:00
6678260eb9 man: Minor wording tweak for host/connection
The past tense here doesn't make sense.

Signed-off-by: Colin Walters <walters@verbum.org>
2024-01-27 14:34:39 -05:00
dc94a10d68 quadlet: Add documentation about template use to manpage
Signed-off-by: Alexander Larsson <alexl@redhat.com>
2024-01-26 13:57:47 +01:00
7dcbc75aa0 [CI:DOCS] minor man page cleanup
Followup to #21285. I hope this is easier to review
than a re-push of that one.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2024-01-25 15:59:18 -07:00
fc660a22a4 Merge pull request #21285 from rhatdan/man
[CI:DOCS] Clean up man pages.
2024-01-25 18:41:19 +00:00
a0ad2cfaa2 Merge pull request #21342 from ygalblum/kube-play-pvc-image-based
Kube Play - allow creating image based volumes
2024-01-25 17:35:20 +00:00
ee61b130af [CI:DOCS] Update farm docs
Add some updates and clarification to the
farm docs.

Signed-off-by: Urvashi Mohnani <umohnani@redhat.com>
2024-01-25 11:20:03 -05:00
269149a9fd Kube Play - allow creating image based volumes
Add volume.podman.io/image annotation to allow setting the source image

Signed-off-by: Ygal Blum <ygal.blum@gmail.com>
2024-01-24 11:55:29 +02:00
d3a49fdedb Add information about --latest support on man pages
On Mac and Windows systems the --latest option is not supported
this PR mentions this fact in the examples section of the man page.
Also added documentation and consistency to the man pages examples
sections.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2024-01-23 07:28:40 -05:00
d792cc448e Warn about whitespace in /etc/subuid and /etc/subgid files
Fixes: https://github.com/containers/podman/issues/21071

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2024-01-23 06:09:53 -05:00
a5612bc540 Quadlet: ensure all keys are documented
New CI validation check: all keys in quadlet.go must be
documented at least once in podman-systemd.unit.5.md.
Adding '// deprecated' next to an enum definition will
exclude said key from the documentation cross-checks.

And, because the md file lists keys in both table and block
form, make sure those all match.

And make sure everything is sorted in lexical order, in
both .go source and in man page.

And add a validation check to make sure it stays that way.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2024-01-18 06:17:57 -07:00
dbe0e67897 Man pages: tighter documenting of --format fields
Initial impetus was #20958 (ps --format .Label abc). This is
a complicated solution to a simple-seeming problem.

The problem: .Label is a cobra *function*, something I did not
know about nor handle.

Solution: recognize cobra functions. Switch to __complete,
not __completeNoDesc, so we can see the number of arguments
required. Invent new man-page format for documenting functions.
And, finally, start enforcing how functions (and cobra structs)
are documented.

This discovered a never-used completion function, .Recycle(),
in podman-events. Remove it.

[NO NEW TESTS NEEDED] - the .go change is an excision of dead code.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2024-01-15 13:11:27 -07:00
3a46fe858f Merge pull request #21069 from umohnani8/new-farmbuild-2
farm build: push built images to registry
2024-01-15 18:41:29 +00:00
d95710a89c farm build: push built images to registry
Update farm build to directly push images to a registry
after all the builds are complete on all the nodes.
A manifest list is then created locally and pushed to
the registry as well.

Signed-off-by: Urvashi Mohnani <umohnani@redhat.com>
2024-01-15 11:31:17 -05:00
46cfc9858f Make --gpus work with nvidia gpus
Somewhat documented here:
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/cdi-support.html
https://stackoverflow.com/questions/25185405/using-gpu-from-a-docker-container

Fixes: https://github.com/containers/podman/issues/21156

Don't have access to nvidia GPUS, relying on contributor testing.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2024-01-11 21:13:25 -05:00
3714ae3420 quadlet: fix quoting of example option values in container unit file documentation
The quotes are interpreted as part of the value, so that, for example,
`HealthCmd="true"` is translated to the podman argument
`--health-cmd "\"true\""`.

Signed-off-by: Cedric Staniewski <cedric@gmx.ca>
2024-01-11 00:02:41 +01:00
4e4c3e3dbf cmd: support --config option to locate authentication file
Let's support --config option by setting environment variable
DOCKER_CONFIG instead of ignoring it for docker compatibility, so
it could be used to locate config.json as authentication file.

Also add a test case for this change, remove the deprecated one.

Signed-off-by: Ming Liu <liu.ming50@gmail.com>
2024-01-10 09:31:43 +01:00
475dff6a06 Merge pull request #21204 from grooverdan/markdown_man_pages_mariadb
[CI:DOCS] docs: update mariadb example
2024-01-09 12:49:51 +00:00
a8c2b84c20 docs: update mariadb example
podman-kube-generate created from pod:

1. podman volume create mariadb_data
2. podman run --env MARIADB_ROOT_PASSWORD=x --name some-mariadb \
     -v mariadb_data:/var/lib/mysql -P  -d mariadb:10.11
3. + command in doc.

podman-run - using MARIADB_ROOT_PASSWORD environment variables for a
while now.

Signed-off-by: Daniel Black <daniel@mariadb.org>
2024-01-09 13:31:39 +11:00
b01a330d37 Use single persistent ssh key for all machines
Changes SSH key behavior such that there is a single persisted key for all
machines across all providers. If there is no key that is located at
`.local/share/containers/podman/machine/` then it is created. The keys are
not deleted when the last machine on the host is removed.

The main motivation for this change is it leads to fewer files created on the
host as a result of vm configuration. Having `n` machines on your system doesn't
result in `2n` machine-related files in `.ssh` on your system anymore.

As a result of ssh keys being persisted by default, the `--save-keys` flag
on `podman machine rm` will no longer be supported.

Signed-off-by: Jake Correnti <jakecorrenti+github@proton.me>
2024-01-04 23:47:49 -05:00
5b32dc45db Merge pull request #21155 from alexandear/docs-fix-typos
docs: fix typos
2024-01-04 16:37:19 +00:00
560455cbd6 docs: fix typos
Signed-off-by: Oleksandr Redko <Oleksandr_Redko@epam.com>
2024-01-04 12:10:11 +02:00
689d97a1d1 Quadlet - add StopTimeout key for .container file
Allow setting the timeout for stopping the container
Add test
Update man

Signed-off-by: Ygal Blum <ygal.blum@gmail.com>
2024-01-03 18:38:38 +02:00
de3c02ab46 Merge pull request #21039 from rhatdan/pods
Allow PublishPorts to be used with [Pod] entry
2023-12-18 20:30:15 +00:00
c324dbb8b4 Merge pull request #21049 from k9withabone/quadlet-ulimit-multiple
quadlet container support multiple Ulimit options
2023-12-18 12:38:22 +00:00