a415a1
# The containers configuration file specifies all of the available configuration
a415a1
# command-line options/flags for container engine tools like Podman & Buildah,
a415a1
# but in a TOML format that can be easily modified and versioned.
a415a1
a415a1
# Please refer to containers.conf(5) for details of all configuration options.
a415a1
# Not all container engines implement all of the options.
a415a1
# All of the options have hard coded defaults and these options will override
a415a1
# the built in defaults. Users can then override these options via the command
a415a1
# line. Container engines will read containers.conf files in up to three
a415a1
# locations in the following order:
a415a1
#  1. /usr/share/containers/containers.conf
a415a1
#  2. /etc/containers/containers.conf
a415a1
#  3. $HOME/.config/containers/containers.conf (Rootless containers ONLY)
a415a1
#  Items specified in the latter containers.conf, if they exist, override the
a415a1
# previous containers.conf settings, or the default settings.
a415a1
a415a1
[containers]
a415a1
a415a1
# List of annotation. Specified as
a415a1
# "key = value"
a415a1
# If it is empty or commented out, no annotations will be added
a415a1
#
a415a1
#annotations = []
a415a1
a415a1
# Used to change the name of the default AppArmor profile of container engine.
a415a1
#
a415a1
#apparmor_profile = "container-default"
a415a1
a415a1
# Default way to to create a cgroup namespace for the container
a415a1
# Options are:
a415a1
# `private` Create private Cgroup Namespace for the container.
a415a1
# `host`    Share host Cgroup Namespace with the container.
a415a1
#
a415a1
#cgroupns = "private"
a415a1
a415a1
# Control container cgroup configuration
a415a1
# Determines  whether  the  container will create CGroups.
a415a1
# Options are:
a415a1
# `enabled`   Enable cgroup support within container
a415a1
# `disabled`  Disable cgroup support, will inherit cgroups from parent
a415a1
# `no-conmon` Do not create a cgroup dedicated to conmon.
a415a1
#
a415a1
#cgroups = "enabled"
a415a1
a415a1
# List of default capabilities for containers. If it is empty or commented out,
a415a1
# the default capabilities defined in the container engine will be added.
a415a1
#
a415a1
default_capabilities = [
a415a1
    "NET_RAW",
a415a1
  "CHOWN",
a415a1
  "DAC_OVERRIDE",
a415a1
  "FOWNER",
a415a1
  "FSETID",
a415a1
  "KILL",
a415a1
  "NET_BIND_SERVICE",
a415a1
  "SETFCAP",
a415a1
  "SETGID",
a415a1
  "SETPCAP",
a415a1
  "SETUID",
a415a1
  "SYS_CHROOT"
a415a1
]
a415a1
a415a1
# A list of sysctls to be set in containers by default,
a415a1
# specified as "name=value",
a415a1
# for example:"net.ipv4.ping_group_range = 0 0".
a415a1
#
a415a1
default_sysctls = [
a415a1
  "net.ipv4.ping_group_range=0 0",
a415a1
]
a415a1
a415a1
# A list of ulimits to be set in containers by default, specified as
a415a1
# "<ulimit name>=<soft limit>:<hard limit>", for example:
a415a1
# "nofile=1024:2048"
a415a1
# See setrlimit(2) for a list of resource names.
a415a1
# Any limit not specified here will be inherited from the process launching the
a415a1
# container engine.
a415a1
# Ulimits has limits for non privileged container engines.
a415a1
#
a415a1
#default_ulimits = [
a415a1
#  "nofile=1280:2560",
a415a1
#]
a415a1
a415a1
# List of devices. Specified as
a415a1
# "<device-on-host>:<device-on-container>:<permissions>", for example:
a415a1
# "/dev/sdc:/dev/xvdc:rwm".
a415a1
# If it is empty or commented out, only the default devices will be used
a415a1
#
a415a1
#devices = []
a415a1
a415a1
# List of default DNS options to be added to /etc/resolv.conf inside of the container.
a415a1
#
a415a1
#dns_options = []
a415a1
a415a1
# List of default DNS search domains to be added to /etc/resolv.conf inside of the container.
a415a1
#
a415a1
#dns_searches = []
a415a1
a415a1
# Set default DNS servers.
a415a1
# This option can be used to override the DNS configuration passed to the
a415a1
# container. The special value "none" can be specified to disable creation of
a415a1
# /etc/resolv.conf in the container.
a415a1
# The /etc/resolv.conf file in the image will be used without changes.
a415a1
#
a415a1
#dns_servers = []
a415a1
a415a1
# Environment variable list for the conmon process; used for passing necessary
a415a1
# environment variables to conmon or the runtime.
a415a1
#
a415a1
#env = [
a415a1
#  "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
a415a1
#  "TERM=xterm",
a415a1
#]
a415a1
a415a1
# Pass all host environment variables into the container.
a415a1
#
a415a1
#env_host = false
a415a1
a415a1
# Default proxy environment variables passed into the container.
a415a1
# The environment variables passed in include:
a415a1
# http_proxy, https_proxy, ftp_proxy, no_proxy, and the upper case versions of
a415a1
# these. This option is needed when host system uses a proxy but container
a415a1
# should not use proxy. Proxy environment variables specified for the container
a415a1
# in any other way will override the values passed from the host.
a415a1
#
a415a1
#http_proxy = true
a415a1
a415a1
# Run an init inside the container that forwards signals and reaps processes.
a415a1
#
a415a1
#init = false
a415a1
a415a1
# Container init binary, if init=true, this is the init binary to be used for containers.
a415a1
#
a415a1
#init_path = "/usr/libexec/podman/catatonit"
a415a1
a415a1
# Default way to to create an IPC namespace (POSIX SysV IPC) for the container
a415a1
# Options are:
a415a1
# `private` Create private IPC Namespace for the container.
a415a1
# `host`    Share host IPC Namespace with the container.
a415a1
#
a415a1
#ipcns = "private"
a415a1
a415a1
# keyring tells the container engine whether to create
a415a1
# a kernel keyring for use within the container.
a415a1
#
a415a1
#keyring = true
a415a1
a415a1
# label tells the container engine whether to use container separation using
a415a1
# MAC(SELinux) labeling or not.
a415a1
# The label flag is ignored on label disabled systems.
a415a1
#
a415a1
#label = true
a415a1
a415a1
# Logging driver for the container. Available options: k8s-file and journald.
a415a1
#
a415a1
#log_driver = "k8s-file"
a415a1
a415a1
# Maximum size allowed for the container log file. Negative numbers indicate
a415a1
# that no size limit is imposed. If positive, it must be >= 8192 to match or
a415a1
# exceed conmon's read buffer. The file is truncated and re-opened so the
a415a1
# limit is never exceeded.
a415a1
#
a415a1
#log_size_max = -1
a415a1
a415a1
# Specifies default format tag for container log messages.
a415a1
# This is useful for creating a specific tag for container log messages.
a415a1
# Containers logs default to truncated container ID as a tag.
a415a1
#
a415a1
#log_tag = ""
a415a1
a415a1
# Default way to to create a Network namespace for the container
a415a1
# Options are:
a415a1
# `private` Create private Network Namespace for the container.
a415a1
# `host`    Share host Network Namespace with the container.
a415a1
# `none`    Containers do not use the network
a415a1
#
a415a1
#netns = "private"
a415a1
a415a1
# Create /etc/hosts for the container.  By default, container engine manage
a415a1
# /etc/hosts, automatically adding  the container's  own  IP  address.
a415a1
#
a415a1
#no_hosts = false
a415a1
a415a1
# Default way to to create a PID namespace for the container
a415a1
# Options are:
a415a1
# `private` Create private PID Namespace for the container.
a415a1
# `host`    Share host PID Namespace with the container.
a415a1
#
a415a1
#pidns = "private"
a415a1
a415a1
# Maximum number of processes allowed in a container.
a415a1
#
a415a1
#pids_limit = 2048
a415a1
a415a1
# Copy the content from the underlying image into the newly created volume
a415a1
# when the container is created instead of when it is started. If false,
a415a1
# the container engine will not copy the content until the container is started.
a415a1
# Setting it to true may have negative performance implications.
a415a1
#
a415a1
#prepare_volume_on_create = false
a415a1
a415a1
# Indicates the networking to be used for rootless containers
a415a1
#
a415a1
#rootless_networking = "slirp4netns"
a415a1
a415a1
# Path to the seccomp.json profile which is used as the default seccomp profile
a415a1
# for the runtime.
a415a1
#
a415a1
#seccomp_profile = "/usr/share/containers/seccomp.json"
a415a1
a415a1
# Size of /dev/shm. Specified as <number><unit>.
a415a1
# Unit is optional, values:
a415a1
# b (bytes), k (kilobytes), m (megabytes), or g (gigabytes).
a415a1
# If the unit is omitted, the system uses bytes.
a415a1
#
a415a1
#shm_size = "65536k"
a415a1
a415a1
# Set timezone in container. Takes IANA timezones as well as "local",
a415a1
# which sets the timezone in the container to match the host machine.
a415a1
#
a415a1
#tz = ""
a415a1
a415a1
# Set umask inside the container
a415a1
#
a415a1
#umask = "0022"
a415a1
a415a1
# Default way to to create a User namespace for the container
a415a1
# Options are:
a415a1
# `auto`        Create unique User Namespace for the container.
a415a1
# `host`    Share host User Namespace with the container.
a415a1
#
a415a1
#userns = "host"
a415a1
a415a1
# Number of UIDs to allocate for the automatic container creation.
a415a1
# UIDs are allocated from the "container" UIDs listed in
a415a1
# /etc/subuid & /etc/subgid
a415a1
#
a415a1
#userns_size = 65536
a415a1
a415a1
# Default way to to create a UTS namespace for the container
a415a1
# Options are:
a415a1
# `private`        Create private UTS Namespace for the container.
a415a1
# `host`    Share host UTS Namespace with the container.
a415a1
#
a415a1
#utsns = "private"
a415a1
a415a1
# List of volumes. Specified as
a415a1
# "<directory-on-host>:<directory-in-container>:<options>", for example:
a415a1
# "/db:/var/lib/db:ro".
a415a1
# If it is empty or commented out, no volumes will be added
a415a1
#
a415a1
#volumes = []
a415a1
a415a1
# The network table contains settings pertaining to the management of
a415a1
# CNI plugins.
a415a1
a415a1
[secrets]
a415a1
#driver = "file"
a415a1
a415a1
[secrets.opts]
a415a1
#root = "/example/directory"
a415a1
a415a1
[network]
a415a1
a415a1
# Path to directory where CNI plugin binaries are located.
a415a1
#
a415a1
#cni_plugin_dirs = ["/usr/libexec/cni"]
a415a1
a415a1
# The network name of the default CNI network to attach pods to.
a415a1
#
a415a1
#default_network = "podman"
a415a1
a415a1
# The default subnet for the default CNI network given in default_network.
a415a1
# If a network with that name does not exist, a new network using that name and
a415a1
# this subnet will be created.
a415a1
# Must be a valid IPv4 CIDR prefix.
a415a1
#
a415a1
#default_subnet = "10.88.0.0/16"
a415a1
a415a1
# Path to the directory where CNI configuration files are located.
a415a1
#
a415a1
#network_config_dir = "/etc/cni/net.d/"
a415a1
a415a1
[engine]
a415a1
# Index to the active service
a415a1
#
a415a1
#active_service = production
a415a1
a415a1
# Cgroup management implementation used for the runtime.
a415a1
# Valid options "systemd" or "cgroupfs"
a415a1
#
a415a1
#cgroup_manager = "systemd"
a415a1
a415a1
# Environment variables to pass into conmon
a415a1
#
a415a1
#conmon_env_vars = [
a415a1
#  "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
a415a1
#]
a415a1
a415a1
# Paths to look for the conmon container manager binary
a415a1
#
a415a1
#conmon_path = [
a415a1
#  "/usr/libexec/podman/conmon",
a415a1
#  "/usr/local/libexec/podman/conmon",
a415a1
#  "/usr/local/lib/podman/conmon",
a415a1
#  "/usr/bin/conmon",
a415a1
#  "/usr/sbin/conmon",
a415a1
#  "/usr/local/bin/conmon",
a415a1
#  "/usr/local/sbin/conmon"
a415a1
#]
a415a1
a415a1
# Specify the keys sequence used to detach a container.
a415a1
# Format is a single character [a-Z] or a comma separated sequence of
a415a1
# `ctrl-<value>`, where `<value>` is one of:
a415a1
# `a-z`, `@`, `^`, `[`, `\`, `]`, `^` or `_`
a415a1
#
a415a1
#detach_keys = "ctrl-p,ctrl-q"
a415a1
a415a1
# Determines whether engine will reserve ports on the host when they are
a415a1
# forwarded to containers. When enabled, when ports are forwarded to containers,
a415a1
# ports are held open by as long as the container is running, ensuring that
a415a1
# they cannot be reused by other programs on the host. However, this can cause
a415a1
# significant memory usage if a container has many ports forwarded to it.
a415a1
# Disabling this can save memory.
a415a1
#
a415a1
#enable_port_reservation = true
a415a1
a415a1
# Environment variables to be used when running the container engine (e.g., Podman, Buildah).
a415a1
# For example "http_proxy=internal.proxy.company.com".
a415a1
# Note these environment variables will not be used within the container.
a415a1
# Set the env section under [containers] table, if you want to set environment variables for the container.
a415a1
#
a415a1
#env = []
a415a1
a415a1
# Selects which logging mechanism to use for container engine events.
a415a1
# Valid values are `journald`, `file` and `none`.
a415a1
#
a415a1
#events_logger = "journald"
a415a1
events_logger = "file"
a415a1
a415a1
# Path to OCI hooks directories for automatically executed hooks.
a415a1
#
a415a1
#hooks_dir = [
a415a1
#  "/usr/share/containers/oci/hooks.d",
a415a1
#]
a415a1
a415a1
# Manifest Type (oci, v2s2, or v2s1) to use when pulling, pushing, building
a415a1
# container images. By default image pulled and pushed match the format of the
a415a1
# source image. Building/committing defaults to OCI.
a415a1
#
a415a1
#image_default_format = ""
a415a1
a415a1
# Default transport method for pulling and pushing for images
a415a1
#
a415a1
#image_default_transport = "docker://"
a415a1
a415a1
# Maximum number of image layers to be copied (pulled/pushed) simultaneously.
a415a1
# Not setting this field, or setting it to zero, will fall back to containers/image defaults.
a415a1
#
a415a1
#image_parallel_copies = 0
a415a1
a415a1
# Default command to run the infra container
a415a1
#
a415a1
#infra_command = "/pause"
a415a1
a415a1
# Infra (pause) container image name for pod infra containers.  When running a
a415a1
# pod, we start a `pause` process in a container to hold open the namespaces
a415a1
# associated with the  pod.  This container does nothing other then sleep,
a415a1
# reserving the pods resources for the lifetime of the pod.
a415a1
#
a415a1
#infra_image = "k8s.gcr.io/pause:3.4.1"
a415a1
infra_image = "registry.access.redhat.com/ubi8/pause"
a415a1
a415a1
# Specify the locking mechanism to use; valid values are "shm" and "file".
a415a1
# Change the default only if you are sure of what you are doing, in general
a415a1
# "file" is useful only on platforms where cgo is not available for using the
a415a1
# faster "shm" lock type.  You may need to run "podman system renumber" after
a415a1
# you change the lock type.
a415a1
#
a415a1
#lock_type** = "shm"
a415a1
a415a1
# Indicates if Podman is running inside a VM via Podman Machine.
a415a1
# Podman uses this value to do extra setup around networking from the
a415a1
# container inside the VM to to host.
a415a1
#
a415a1
#machine_enabled = false
a415a1
a415a1
# MultiImageArchive - if true, the container engine allows for storing archives
a415a1
# (e.g., of the docker-archive transport) with multiple images.  By default,
a415a1
# Podman creates single-image archives.
a415a1
#
a415a1
#multi_image_archive = "false"
a415a1
a415a1
# Default engine namespace
a415a1
# If engine is joined to a namespace, it will see only containers and pods
a415a1
# that were created in the same namespace, and will create new containers and
a415a1
# pods in that namespace.
a415a1
# The default namespace is "", which corresponds to no namespace. When no
a415a1
# namespace is set, all containers and pods are visible.
a415a1
#
a415a1
#namespace = ""
a415a1
a415a1
# Path to the slirp4netns binary
a415a1
#
a415a1
#network_cmd_path = ""
a415a1
a415a1
# Default options to pass to the slirp4netns binary.
a415a1
# For example "allow_host_loopback=true"
a415a1
#
a415a1
#network_cmd_options = []
a415a1
a415a1
# Whether to use chroot instead of pivot_root in the runtime
a415a1
#
a415a1
#no_pivot_root = false
a415a1
a415a1
# Number of locks available for containers and pods.
a415a1
# If this is changed, a lock renumber must be performed (e.g. with the
a415a1
# 'podman system renumber' command).
a415a1
#
a415a1
#num_locks = 2048
a415a1
a415a1
# Whether to pull new image before running a container
a415a1
#
a415a1
#pull_policy = "missing"
a415a1
a415a1
# Indicates whether the application should be running in remote mode. This flag modifies the
a415a1
# --remote option on container engines. Setting the flag to true will default
a415a1
# `podman --remote=true` for access to the remote Podman service.
a415a1
#
a415a1
#remote = false
a415a1
a415a1
# Default OCI runtime
a415a1
#
a415a1
#runtime = "crun"
a415a1
runtime = "runc"
a415a1
a415a1
# List of the OCI runtimes that support --format=json.  When json is supported
a415a1
# engine will use it for reporting nicer errors.
a415a1
#
a415a1
#runtime_supports_json = ["crun", "runc", "kata", "runsc"]
a415a1
a415a1
# List of the OCI runtimes that supports running containers with KVM Separation.
a415a1
#
a415a1
#runtime_supports_kvm = ["kata"]
a415a1
a415a1
# List of the OCI runtimes that supports running containers without cgroups.
a415a1
#
a415a1
#runtime_supports_nocgroups = ["crun"]
a415a1
a415a1
# Directory for persistent engine files (database, etc)
a415a1
# By default, this will be configured relative to where the containers/storage
a415a1
# stores containers
a415a1
# Uncomment to change location from this default
a415a1
#
a415a1
#static_dir = "/var/lib/containers/storage/libpod"
a415a1
a415a1
# Number of seconds to wait for container to exit before sending kill signal.
a415a1
#
a415a1
#stop_timeout = 10
a415a1
a415a1
# map of service destinations
a415a1
#
a415a1
#[service_destinations]
a415a1
#  [service_destinations.production]
a415a1
#     URI to access the Podman service
a415a1
#     Examples:
a415a1
#       rootless "unix://run/user/$UID/podman/podman.sock" (Default)
a415a1
#       rootfull "unix://run/podman/podman.sock (Default)
a415a1
#       remote rootless ssh://engineering.lab.company.com/run/user/1000/podman/podman.sock
a415a1
#       remote rootfull ssh://root@10.10.1.136:22/run/podman/podman.sock
a415a1
#
a415a1
#    uri = "ssh://user@production.example.com/run/user/1001/podman/podman.sock"
a415a1
#    Path to file containing ssh identity key
a415a1
#    identity = "~/.ssh/id_rsa"
a415a1
a415a1
# Directory for temporary files. Must be tmpfs (wiped after reboot)
a415a1
#
a415a1
#tmp_dir = "/run/libpod"
a415a1
a415a1
# Directory for libpod named volumes.
a415a1
# By default, this will be configured relative to where containers/storage
a415a1
# stores containers.
a415a1
# Uncomment to change location from this default.
a415a1
#
a415a1
#volume_path = "/var/lib/containers/storage/volumes"
a415a1
a415a1
# Paths to look for a valid OCI runtime (crun, runc, kata, runsc, etc)
a415a1
[engine.runtimes]
a415a1
#crun = [
a415a1
#  "/usr/bin/crun",
a415a1
#  "/usr/sbin/crun",
a415a1
#  "/usr/local/bin/crun",
a415a1
#  "/usr/local/sbin/crun",
a415a1
#  "/sbin/crun",
a415a1
#  "/bin/crun",
a415a1
#  "/run/current-system/sw/bin/crun",
a415a1
#]
a415a1
a415a1
#kata = [
a415a1
#  "/usr/bin/kata-runtime",
a415a1
#  "/usr/sbin/kata-runtime",
a415a1
#  "/usr/local/bin/kata-runtime",
a415a1
#  "/usr/local/sbin/kata-runtime",
a415a1
#  "/sbin/kata-runtime",
a415a1
#  "/bin/kata-runtime",
a415a1
#  "/usr/bin/kata-qemu",
a415a1
#  "/usr/bin/kata-fc",
a415a1
#]
a415a1
a415a1
#runc = [
a415a1
#  "/usr/bin/runc",
a415a1
#  "/usr/sbin/runc",
a415a1
#  "/usr/local/bin/runc",
a415a1
#  "/usr/local/sbin/runc",
a415a1
#  "/sbin/runc",
a415a1
#  "/bin/runc",
a415a1
#  "/usr/lib/cri-o-runc/sbin/runc",
a415a1
#]
a415a1
a415a1
#runsc = [
a415a1
#  "/usr/bin/runsc",
a415a1
#  "/usr/sbin/runsc",
a415a1
#  "/usr/local/bin/runsc",
a415a1
#  "/usr/local/sbin/runsc",
a415a1
#  "/bin/runsc",
a415a1
#  "/sbin/runsc",
a415a1
#  "/run/current-system/sw/bin/runsc",
a415a1
#]
a415a1
a415a1
[engine.volume_plugins]
a415a1
#testplugin = "/run/podman/plugins/test.sock"
a415a1
a415a1
# The [engine.volume_plugins] table MUST be the last entry in this file.
a415a1
# (Unless another table is added)
a415a1
# TOML does not provide a way to end a table other than a further table being
a415a1
# defined, so every key hereafter will be part of [volume_plugins] and not the
a415a1
# main config.