Commit Graph

1967 Commits

Author SHA1 Message Date
openshift-merge-bot[bot] 9b7568619b
Merge pull request #21533 from Luap99/podman-connections-doc
document new connection/farm storage location
2024-02-12 13:46:52 +00:00
Lokesh Mandvekar 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
localhost 3495aae42b docs: resole hierarchical issues with userns parameters
Signed-off-by: paomian <xpaomian@gmail.com>
2024-02-09 14:45:05 +08:00
openshift-merge-bot[bot] 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
openshift-merge-bot[bot] 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
Paul Holzinger 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
Joel Purra 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
openshift-merge-bot[bot] 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
openshift-merge-bot[bot] 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
Giuseppe Scrivano 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
Matt Heon 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
Piratey7007 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
Paul Holzinger 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
Paul Holzinger 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
Matt Heon 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
openshift-merge-bot[bot] 5e64d4f021
Merge pull request #21068 from alexlarsson/quadlet-templates
Support templates in quadlet
2024-02-02 10:36:18 +00:00
Paul Holzinger 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
openshift-merge-bot[bot] c41c30bedd
Merge pull request #21180 from rhatdan/nvidia
Make --gpus work with nvidia gpus
2024-01-30 14:59:02 +00:00
openshift-merge-bot[bot] 831fd945c4
Merge pull request #21394 from jameshurst/docs-fix
[CI:DOCS] fix documentation formatting issues
2024-01-29 08:41:43 +00:00
James Hurst d5bed05df7 docs: fix podman-manifest-rm header
Signed-off-by: James Hurst <james@jameshurst.ca>
2024-01-27 19:03:35 -05:00
James Hurst 3592b56c37 docs: fix unclosed code block
Signed-off-by: James Hurst <james@jameshurst.ca>
2024-01-27 19:03:35 -05:00
Colin Walters 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
Alexander Larsson 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
Ed Santiago 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
openshift-merge-bot[bot] fc660a22a4
Merge pull request #21285 from rhatdan/man
[CI:DOCS] Clean up man pages.
2024-01-25 18:41:19 +00:00
openshift-merge-bot[bot] 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
Urvashi Mohnani 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
Ygal Blum 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
Daniel J Walsh 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
Daniel J Walsh 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
Ed Santiago 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
Ed Santiago 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
openshift-merge-bot[bot] 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
Urvashi Mohnani 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
Daniel J Walsh 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
Cedric Staniewski 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
Ming Liu 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
openshift-merge-bot[bot] 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
Daniel Black 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
Jake Correnti 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
openshift-merge-bot[bot] 5b32dc45db
Merge pull request #21155 from alexandear/docs-fix-typos
docs: fix typos
2024-01-04 16:37:19 +00:00
Oleksandr Redko 560455cbd6 docs: fix typos
Signed-off-by: Oleksandr Redko <Oleksandr_Redko@epam.com>
2024-01-04 12:10:11 +02:00
Ygal Blum 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
openshift-merge-bot[bot] de3c02ab46
Merge pull request #21039 from rhatdan/pods
Allow PublishPorts to be used with [Pod] entry
2023-12-18 20:30:15 +00:00
openshift-merge-bot[bot] c324dbb8b4
Merge pull request #21049 from k9withabone/quadlet-ulimit-multiple
quadlet container support multiple Ulimit options
2023-12-18 12:38:22 +00:00
Daniel J Walsh f169fc76af
Allow PublishPorts to be used with [Pod] entry
Fixed: https://github.com/containers/podman/issues/21035

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2023-12-17 06:25:36 -05:00
Paul Nettleton 6a96c8b5fc quadlet container support multiple Ulimit options
Add support for using multiple `Ulimit=` options in `.container` files.
Before, only the last `Ulimit=` option was used in the podman command.

Update podman-systemd.unit.5 docs to reflect this change.

Add `test/e2e/quadlet/ulimit.container` to e2e tests.

Signed-off-by: Paul Nettleton <k9@k9withabone.dev>
2023-12-17 04:31:59 -06:00
gardar d76bb978b7
docs: oci-dir does not support compress as suggested
The docs have this note for the `--compress` flag

> Note: This flag can only be set with --format=docker-dir.

Yet the provided example has `--compress` with `--format=oci-dir`

Signed-off-by: gardar <gardar@users.noreply.github.com>
2023-12-15 19:40:46 +00:00
Ed Santiago e4ecd7cca3 doc cleanup
Began as a review of #20983, a community PR from @krumelmonster
for moving divisive-language footnotes closer to the point
where they're used. In the process, I noticed a lot of poor
markdown, mostly bad use of whitespace. Cleaned it up, added
some italic/bold/tty markdown to options, and cleaned up
some language I found confusing.

Thanks to @krumelmonster for initial PR.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2023-12-14 05:17:43 -07:00
Daniel J Walsh f51ff77644
Support podman ps --format '{{ .Label label }}'
Also Support for podman pod ps  --format '{{ .Label label }}'

Finally fix support for --format '{{ .Podname }}'
   When user specifies .Podname this implies --pod was passed.

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

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2023-12-13 07:09:54 -05:00