1844 Commits

Author SHA1 Message Date
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
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
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
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
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
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
611ba2ff31 Merge pull request #20827 from kaivol/userns-auto-intermediate-id-lookup
Support lookup of intermediate ID for uidmapping and gidmapping in `--userns=auto`
2023-12-11 10:19:14 +00:00
72ceb6ee82 Merge pull request #20905 from Odilhao/issue-20585-entrypoint
Add support for Entrypoint in quadlet
2023-12-06 14:13:03 +00:00
67aae8e62e Merge pull request #20866 from giuseppe/add-preserve-fds-list
podman: new option --preserve-fd
2023-12-06 13:34:34 +00:00
100089f411 Merge pull request #20885 from IceWreck/userns-kube
Add support for the userns annotation in kube play
2023-12-05 13:55:20 +00:00
01d397a658 podman: new option --preserve-fd
add a new option --preserve-fd that allows to specify a list of FDs to
pass down to the container.

It is similar to --preserve-fds but it allows to specify a list of FDs
instead of the maximum FD number to preserve.

--preserve-fd and --preserve-fds are mutually exclusive.

It requires crun since runc would complain if any fd below
--preserve-fds is not preserved.

Closes: https://github.com/containers/podman/issues/20844

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-12-05 10:16:41 +01:00
972ffaca4d Add support for Entrypoint in quadlet
This PR closes #20585

Add Inital support for Entrypoint on quadlets
Add Bats Tests for Entrypoint
Updates the documentation with one example to use the Entrypoint option

Signed-off-by: Odilon Sousa <osousa@redhat.com>
2023-12-04 23:38:53 -03:00
093868b37f Merge pull request #20887 from ygalblum/quadlet-pod-quadlet-based-keys
Quadlet - add support for keys that may refer to other Quadlet units in `.pod` files
2023-12-04 13:23:10 +00:00
b1eccedf5e [CI:DOCS] Update health-start-periods docs
Update the health-start-period docs to clarify what exactly
the health-start-period flag does based on whether the health
check command succeeds or fails.

Signed-off-by: Urvashi Mohnani <umohnani@redhat.com>
2023-12-04 05:29:53 -05:00
07104fb272 fix podman-systemd.unit.5 Mask/Unmask placement
When the `Mask=` and `Unmask=` quadlet options were initially added,
they were mistakenly placed in the [Kube] section when they should be in
the [Container] section. This commit corrects the mistake and adds
example usage to the [Container] options table.

Signed-off-by: Paul Nettleton <k9@k9withabone.dev>
2023-12-04 00:45:03 -06:00
7e2a8d58ab Quadlet .pod - add support for the Volume Key
Add e2e tests
Update documentation

Signed-off-by: Ygal Blum <ygal.blum@gmail.com>
2023-12-03 10:23:13 +02:00
212b4c9e93 Quadlet .pod - add support for the Network Key
Add e2e tests
Update documentation

Signed-off-by: Ygal Blum <ygal.blum@gmail.com>
2023-12-03 10:22:33 +02:00
04519234e8 Add support for the userns annotation in kube play
[NO NEW TESTS NEEDED]

Signed-off-by: Anchit Bajaj <ab@abifog.com>
2023-12-02 23:14:29 +01:00
e14aa09bb9 Update podman-systemd.unit.5.md
Correction of typos and copy pastes

Signed-off-by: Daniel Mendizabal <daniel@darhon.com>
2023-12-02 23:53:07 +11:00
bc124dd13f Merge pull request #20819 from cgiradkar/20752_farm_flag_move
Move the --farm flag to farm build command
2023-12-01 21:12:38 +00:00
31df9c237e Move the --farm flag to farm build command
The option `farm` which is used to specify the farm to be used, is moved to farm build command from farm command.

closes #20752

Signed-off-by: Chetan Giradkar <cgiradka@redhat.com>
2023-11-30 14:27:06 +00:00
fa0aa91132 @@option volume.image: be specific that -v only affects RUN
Be specific that the `-v` flag only affects RUN instructions.  The
previous wording left it ambiguous, and people might have concluded that
it applied to ADD and COPY as well.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2023-11-30 09:05:33 -05:00
426db6fcc1 Accept a config blob alongside the "changes" slice when committing
When committing containers to create new images, accept a container
config blob being passed in the body of the API request by adding a
Config field to our API structures.  Populate it from the body of
requests that we receive, and use its contents as the body of requests
that we make.

Make the libpod commit endpoint split changes values at newlines, just
like the compat endpoint does.

Pass both the config blob and the "changes" slice to buildah's Commit()
API, so that it can handle cases where they overlap or conflict.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2023-11-30 09:00:52 -05:00
572a7692e3 Merge pull request #20828 from alexlarsson/quadlet-snippets
quadlet: Support systemd style dropin files
2023-11-29 23:24:33 +00:00
d5cf46e807 support lookup of intermediate IDs in gidmapping/uidmapping options in userns=auto
Closes #20699

Signed-off-by: kaivol <github@kavol.de>
2023-11-29 19:03:27 +01:00
8ee2622028 quadlet: Support systemd style dropin files
For a source file like `foo.container`, look for drop in named
`foo.container.d/*.conf` and merged them into the main file.  The
dropins are applied in alphabetical order, and files in earlier
diretories override later files with same name.

This is similar to how systemd dropins work, see:
https://www.freedesktop.org/software/systemd/man/latest/systemd.unit.html

Also adds some tests for these

Signed-off-by: Alexander Larsson <alexl@redhat.com>
2023-11-29 13:46:52 +01:00
828ef9e174 Merge pull request #20817 from eriksjolund/fix-markdown-bugs
[CI:DOCS] Fix markdown bugs
2023-11-29 02:09:43 +00:00
7b4d6a295e [CI:DOCS] Fix markdown bugs
Signed-off-by: Erik Sjölund <erik.sjolund@gmail.com>
2023-11-28 17:28:08 +01:00
545daed1e4 Merge pull request #20762 from ygalblum/quadlet-pod
Quadlet - Add support for .pod units
2023-11-28 14:44:00 +00:00
248cbc6f69 docs: drop default for tmpfs-mode
The default is OCI runtime specific, there is no way for Podman to
know it.

[CI:DOCS]

Closes: https://github.com/containers/podman/issues/20754

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-11-28 13:51:28 +01:00
6b2f48129e Quadlet - Add support for .pod units
Add support for .pod unit files with only PodmanArgs, GlobalArgs, ContainersConfModule and PodName
Add support for linking .container units with .pod ones
Add e2e and system tests
Add to man page

Signed-off-by: Ygal Blum <ygal.blum@gmail.com>
2023-11-28 14:31:53 +02:00
f6b2a13781 Clean up farm-build miscommit
Followup to #20051, which I didn't review in time.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2023-11-27 06:15:43 -07:00
375065caa1 Merge pull request #20763 from arixmkii/fix-farm-docs
[CI:DOCS] Remove unnencessary pregenerated doc
2023-11-25 13:19:27 +00:00
e824657738 Fix Ulimit syntax.
Signed-off-by: Marta <me@marta.nz>
2023-11-24 12:20:35 +00:00
98c525cf96 Remove unnencessary pregenerated doc
Signed-off-by: Arthur Sengileyev <arthur.sengileyev@gmail.com>
2023-11-23 20:07:48 +02:00
ca1331b1a8 Merge pull request #20051 from umohnani8/fbuild-doc
[CI:DOCS] Add podman farm build doc
2023-11-22 18:37:27 +00:00
414642efdb [CI:DOCS] Add podman farm build doc
Move the options for the podman build doc to a common md
that can be used by both podman build and podman farm build.

Signed-off-by: Urvashi Mohnani <umohnani@redhat.com>
2023-11-22 11:00:13 -05:00
2f160f850f Merge pull request #20714 from deuill/quadlet-notify-healthy
quadlet: Support `healthy` for `Notify` directives
2023-11-22 15:52:29 +00:00
6cb2f9b122 quadlet: Support healthy for Notify directives
This expands support for the (previously) boolean `Notify` directive, in
support of healthcheck determined SD-NOTIFY event emission, as
supported by Podman with the `--sdnotify=healthy` option.

Closes: #18189
Signed-off-by: Alex Palaistras <alex@deuill.org>
2023-11-21 18:08:48 +00:00
e40d70cecc new 'no-dereference' mount option
Add a new `no-dereference` mount option supported by crun 1.11+ to
re-create/copy a symlink if it's the source of a mount.  By default the
kernel will resolve the symlink on the host and mount the target.
As reported in #20098, there are use cases where the symlink structure
must be preserved by all means.

Fixes: #20098
Fixes: issues.redhat.com/browse/RUN-1935
Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2023-11-21 13:17:58 +01:00
d0b32255e4 Add support for --compat-auth-file in login/logout
This mostly just inherits the c/common/pkg/auth implementation,
except that AuthFilePath and DockerCompatAuthFilePath can not be set
simultaneously, so don't unnecessarily explicitly set AuthFilePath.
c/common already handles that.

Signed-off-by: Miloslav Trmač <mitr@redhat.com>
2023-11-17 16:44:06 +01:00
638199c495 Merge pull request #20671 from ygalblum/quadlet-uidmap
Quadlet - add support for UID and GID Mapping
2023-11-16 15:40:37 +00:00