mirror of
https://github.com/containers/podman.git
synced 2025-05-28 13:40:33 +08:00

I'd accidentally introduced these typos in ea415610 (hooks/docs: Add oci-hooks.5 and per-package man page building, 2018-05-15, #772). Signed-off-by: W. Trevor King <wking@tremily.us> Closes: #810 Approved by: mheon
23 lines
1.8 KiB
Markdown
23 lines
1.8 KiB
Markdown
# OCI Hooks Configuration
|
|
|
|
For POSIX platforms, the [OCI runtime configuration][runtime-spec] supports [hooks][spec-hooks] for configuring custom actions related to the life cycle of the container.
|
|
The way you enable the hooks above is by editing the OCI runtime configuration before running the OCI runtime (e.g. [`runc`][runc]).
|
|
CRI-O and `podman create` create the OCI configuration for you, and this documentation allows developers to configure them to set their intended hooks.
|
|
|
|
One problem with hooks is that the runtime actually stalls execution of the container before running the hooks and stalls completion of the container, until all hooks complete.
|
|
This can cause some performance issues.
|
|
Also a lot of hooks just check if certain configuration is set and then exit early, without doing anything.
|
|
For example the [oci-systemd-hook][] only executes if the command is `init` or `systemd`, otherwise it just exits.
|
|
This means if we automatically enabled all hooks, every container would have to execute `oci-systemd-hook`, even if they don't run systemd inside of the container.
|
|
Performance would also suffer if we exectuted each hook at each stage ([pre-start][], [post-start][], and [post-stop][]).
|
|
|
|
The hooks configuration is documented in [`oci-hooks.5`](docs/oci-hooks.5.md).
|
|
|
|
[oci-systemd-hook]: https://github.com/projectatomic/oci-systemd-hook
|
|
[post-start]: https://github.com/opencontainers/runtime-spec/blob/v1.0.1/config.md#poststart
|
|
[post-stop]: https://github.com/opencontainers/runtime-spec/blob/v1.0.1/config.md#poststop
|
|
[pre-start]: https://github.com/opencontainers/runtime-spec/blob/v1.0.1/config.md#prestart
|
|
[runc]: https://github.com/opencontainers/runc
|
|
[runtime-spec]: https://github.com/opencontainers/runtime-spec/blob/v1.0.1/spec.md
|
|
[spec-hooks]: https://github.com/opencontainers/runtime-spec/blob/v1.0.1/config.md#posix-platform-hooks
|