bae5f5
% storage.conf(5) Container Storage Configuration File
bae5f5
% Dan Walsh
bae5f5
% May 2017
bae5f5
bae5f5
# NAME
bae5f5
storage.conf - Syntax of Container Storage configuration file
bae5f5
bae5f5
# DESCRIPTION
bae5f5
The STORAGE configuration file specifies all of the available container storage options
bae5f5
for tools using shared container storage, but in a TOML format that can be more easily modified
bae5f5
and versioned.
bae5f5
bae5f5
# FORMAT
bae5f5
The [TOML format][toml] is used as the encoding of the configuration file.
bae5f5
Every option and subtable listed here is nested under a global "storage" table.
bae5f5
No bare options are used. The format of TOML can be simplified to:
bae5f5
bae5f5
    [table]
bae5f5
    option = value
bae5f5
bae5f5
    [table.subtable1]
bae5f5
    option = value
bae5f5
bae5f5
    [table.subtable2]
bae5f5
    option = value
bae5f5
bae5f5
## STORAGE TABLE
bae5f5
bae5f5
The `storage` table supports the following options:
bae5f5
bae5f5
**graphroot**=""
bae5f5
  container storage graph dir (default: "/var/lib/containers/storage")
bae5f5
  Default directory to store all writable content created by container storage programs
bae5f5
bae5f5
**runroot**=""
bae5f5
  container storage run dir (default: "/var/run/containers/storage")
bae5f5
  Default directory to store all temporary writable content created by container storage programs
bae5f5
bae5f5
**driver**=""
bae5f5
  container storage driver (default is "overlay")
bae5f5
  Default Copy On Write (COW) container storage driver
bae5f5
bae5f5
### STORAGE OPTIONS TABLE 
bae5f5
bae5f5
The `storage.options` table supports the following options:
bae5f5
bae5f5
**additionalimagestores**=[]
bae5f5
  Paths to additional container image stores. Usually these are read/only and stored on remote network shares.
bae5f5
bae5f5
**size**=""
bae5f5
  Maximum size of a container image.  Default is 10GB.  This flag can be used to set quota
bae5f5
  on the size of container images.
bae5f5
bae5f5
**override_kernel_check**=""
bae5f5
  Tell storage drivers to ignore kernel version checks.  Some storage drivers assume that if a kernel is too
bae5f5
  old, the driver is not supported.  But for kernels that have had the drivers backported, this flag
bae5f5
  allows users to override the checks
bae5f5
bae5f5
[storage.options.thinpool]
bae5f5
bae5f5
Storage Options for thinpool
bae5f5
bae5f5
The `storage.options.thinpool` table supports the following options:
bae5f5
bae5f5
**autoextend_percent**=""
bae5f5
bae5f5
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%)
bae5f5
bae5f5
**autoextend_threshold**=""
bae5f5
bae5f5
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)
bae5f5
bae5f5
**basesize**=""
bae5f5
bae5f5
Specifies the size to use when creating the base device, which limits the size of images and containers. (10g is the default)
bae5f5
bae5f5
**blocksize**=""
bae5f5
bae5f5
Specifies a custom blocksize to use for the thin pool. (64k is the default)
bae5f5
bae5f5
**directlvm_device**=""
bae5f5
bae5f5
Specifies a custom block storage device to use for the thin pool. Required if you setup devicemapper
bae5f5
bae5f5
**directlvm_device_force**=""
bae5f5
bae5f5
Tells driver to wipe device (directlvm_device) even if device already has a filesystem.  Default is False
bae5f5
bae5f5
**fs**="xfs"
bae5f5
bae5f5
Specifies the filesystem type to use for the base device. (Default is xfs)
bae5f5
bae5f5
**log_level**=""
bae5f5
bae5f5
Sets the log level of devicemapper.
bae5f5
bae5f5
    0: LogLevelSuppress 0 (Default)
bae5f5
    2: LogLevelFatal
bae5f5
    3: LogLevelErr
bae5f5
    4: LogLevelWarn
bae5f5
    5: LogLevelNotice
bae5f5
    6: LogLevelInfo
bae5f5
    7: LogLevelDebug
bae5f5
bae5f5
**min_free_space**=""
bae5f5
bae5f5
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)
bae5f5
bae5f5
**mkfsarg**=""
bae5f5
bae5f5
Specifies extra mkfs arguments to be used when creating the base device.
bae5f5
bae5f5
**mountopt**=""
bae5f5
bae5f5
Specifies extra mount options used when mounting the thin devices.
bae5f5
bae5f5
**use_deferred_removal**=""
bae5f5
bae5f5
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).
bae5f5
bae5f5
**use_deferred_deletion**=""
bae5f5
bae5f5
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).
bae5f5
bae5f5
**xfs_nospace_max_retries**=""
bae5f5
bae5f5
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.
bae5f5
bae5f5
# HISTORY
bae5f5
May 2017, Originally compiled by Dan Walsh <dwalsh@redhat.com>
bae5f5
Format copied from crio.conf man page created by Aleksa Sarai <asarai@suse.de>