d82e54
% storage.conf(5) Container Storage Configuration File
d82e54
% Dan Walsh
d82e54
% May 2017
d82e54
d82e54
# NAME
d82e54
storage.conf - Syntax of Container Storage configuration file
d82e54
d82e54
# DESCRIPTION
d82e54
The STORAGE configuration file specifies all of the available container storage options
d82e54
for tools using shared container storage, but in a TOML format that can be more easily modified
d82e54
and versioned.
d82e54
d82e54
# FORMAT
d82e54
The [TOML format][toml] is used as the encoding of the configuration file.
d82e54
Every option and subtable listed here is nested under a global "storage" table.
d82e54
No bare options are used. The format of TOML can be simplified to:
d82e54
d82e54
    [table]
d82e54
    option = value
d82e54
d82e54
    [table.subtable1]
d82e54
    option = value
d82e54
d82e54
    [table.subtable2]
d82e54
    option = value
d82e54
d82e54
## STORAGE TABLE
d82e54
d82e54
The `storage` table supports the following options:
d82e54
d82e54
**graphroot**=""
d82e54
  container storage graph dir (default: "/var/lib/containers/storage")
d82e54
  Default directory to store all writable content created by container storage programs
d82e54
d82e54
**runroot**=""
d82e54
  container storage run dir (default: "/var/run/containers/storage")
d82e54
  Default directory to store all temporary writable content created by container storage programs
d82e54
d82e54
**driver**=""
d82e54
  container storage driver (default is "overlay")
d82e54
  Default Copy On Write (COW) container storage driver
d82e54
d82e54
### STORAGE OPTIONS TABLE 
d82e54
d82e54
The `storage.options` table supports the following options:
d82e54
d82e54
**additionalimagestores**=[]
d82e54
  Paths to additional container image stores. Usually these are read/only and stored on remote network shares.
d82e54
d82e54
**size**=""
d82e54
  Maximum size of a container image.  Default is 10GB.  This flag can be used to set quota
d82e54
  on the size of container images.
d82e54
d82e54
**override_kernel_check**=""
d82e54
  Tell storage drivers to ignore kernel version checks.  Some storage drivers assume that if a kernel is too
d82e54
  old, the driver is not supported.  But for kernels that have had the drivers backported, this flag
d82e54
  allows users to override the checks
d82e54
d82e54
[storage.options.thinpool]
d82e54
d82e54
Storage Options for thinpool
d82e54
d82e54
The `storage.options.thinpool` table supports the following options:
d82e54
d82e54
**autoextend_percent**=""
d82e54
d82e54
Tells the thinpool driver the amount by which the thinpool needs to be grown. This is specified in terms of % of pool size. So a value of 20 means that when threshold is hit, pool will be grown by 20% of existing pool size. (Default is 20%)
d82e54
d82e54
**autoextend_threshold**=""
d82e54
d82e54
Tells the driver the thinpool extension threshold in terms of percentage of pool size. For example, if threshold is 60, that means when pool is 60% full, threshold has been hit. (80% is the default)
d82e54
d82e54
**basesize**=""
d82e54
d82e54
Specifies the size to use when creating the base device, which limits the size of images and containers. (10g is the default)
d82e54
d82e54
**blocksize**=""
d82e54
d82e54
Specifies a custom blocksize to use for the thin pool. (64k is the default)
d82e54
d82e54
**directlvm_device**=""
d82e54
d82e54
Specifies a custom block storage device to use for the thin pool. Required if you setup devicemapper
d82e54
d82e54
**directlvm_device_force**=""
d82e54
d82e54
Tells driver to wipe device (directlvm_device) even if device already has a filesystem.  Default is False
d82e54
d82e54
**fs**="xfs"
d82e54
d82e54
Specifies the filesystem type to use for the base device. (Default is xfs)
d82e54
d82e54
**log_level**=""
d82e54
d82e54
Sets the log level of devicemapper.
d82e54
d82e54
    0: LogLevelSuppress 0 (Default)
d82e54
    2: LogLevelFatal
d82e54
    3: LogLevelErr
d82e54
    4: LogLevelWarn
d82e54
    5: LogLevelNotice
d82e54
    6: LogLevelInfo
d82e54
    7: LogLevelDebug
d82e54
d82e54
**min_free_space**=""
d82e54
d82e54
Specifies the min free space percent in a thin pool require for new device creation to succeed. Valid values are from 0% - 99%. Value 0% disables (10% is the default)
d82e54
d82e54
**mkfsarg**=""
d82e54
d82e54
Specifies extra mkfs arguments to be used when creating the base device.
d82e54
d82e54
**mountopt**=""
d82e54
d82e54
Specifies extra mount options used when mounting the thin devices.
d82e54
d82e54
**use_deferred_removal**=""
d82e54
d82e54
Marks device for deferred removal.  If the device is in use when it driver attempts to remove it, driver will tell the kernel to remove it as soon as possible.  (Default is true).
d82e54
d82e54
**use_deferred_deletion**=""
d82e54
d82e54
Marks device for deferred deletion. If the device is in use when it driver attempts to delete it, driver continue to attempt to delete device every 30 seconds, or when it restarts.  (Default is true).
d82e54
d82e54
**xfs_nospace_max_retries**=""
d82e54
d82e54
Specifies the maximum number of retries XFS should attempt to complete IO when ENOSPC (no space) error is returned by underlying storage device. (Default is 0, which means to try continuously.
d82e54
d82e54
# HISTORY
d82e54
May 2017, Originally compiled by Dan Walsh <dwalsh@redhat.com>
d82e54
Format copied from crio.conf man page created by Aleksa Sarai <asarai@suse.de>