# Reference ## Table of Contents ### Classes #### Public Classes * [`docker`](#docker): Module to install an up-to-date version of Docker from package. * [`docker::compose`](#docker--compose): install Docker Compose using the recommended curl command. * [`docker::images`](#docker--images) * [`docker::install`](#docker--install): Module to install an up-to-date version of Docker from a package repository. Only for Debian, Red Hat and Windows * [`docker::machine`](#docker--machine): install Docker Machine using the recommended curl command. * [`docker::networks`](#docker--networks) * [`docker::params`](#docker--params): Default parameter values for the docker module * [`docker::plugins`](#docker--plugins) * [`docker::registry_auth`](#docker--registry_auth) * [`docker::repos`](#docker--repos) * [`docker::run_instance`](#docker--run_instance) * [`docker::service`](#docker--service): manage the docker service daemon * [`docker::swarms`](#docker--swarms) * [`docker::systemd_reload`](#docker--systemd_reload): For systems that have systemd * [`docker::volumes`](#docker--volumes) #### Private Classes * `docker::config`: Configuration for docker ### Defined types * [`docker::exec`](#docker--exec): A define which executes a command inside a container. * [`docker::image`](#docker--image): Module to install an up-to-date version of a Docker image from the registry * [`docker::plugin`](#docker--plugin): A define that manages a docker plugin * [`docker::registry`](#docker--registry): Module to configure private docker registries from which to pull Docker images * [`docker::run`](#docker--run): A define which manages a running docker container. * [`docker::secrets`](#docker--secrets) * [`docker::services`](#docker--services): define that managers a Docker services * [`docker::stack`](#docker--stack): deploys Docker stacks or compose v3 * [`docker::swarm`](#docker--swarm): managers a Docker Swarm Mode cluster * [`docker::system_user`](#docker--system_user): manage docker group users * [`docker::windows_account`](#docker--windows_account): Windows account that owns the docker services ### Resource types * [`docker_compose`](#docker_compose): A type representing a Docker Compose file * [`docker_network`](#docker_network): Type representing a Docker network * [`docker_stack`](#docker_stack): A type representing a Docker Stack * [`docker_volume`](#docker_volume): A type representing a Docker volume ### Functions * [`docker::env`](#docker--env) * [`docker::escape`](#docker--escape) * [`docker::sanitised_name`](#docker--sanitised_name): == Function: docker::sanitised_name Function to sanitise container name. === Parameters [*name*] Name to sanitise * [`docker_exec_flags`](#docker_exec_flags): Transforms a hash into a string of docker exec flags * [`docker_params_changed`](#docker_params_changed) * [`docker_plugin_enable_flags`](#docker_plugin_enable_flags): Transforms a hash into a string of docker plugin remove flags * [`docker_plugin_install_flags`](#docker_plugin_install_flags): Transforms a hash into a string of docker plugin install flags * [`docker_plugin_remove_flags`](#docker_plugin_remove_flags): Transforms a hash into a string of docker plugin remove flags * [`docker_run_flags`](#docker_run_flags): Transforms a hash into a string of docker flags * [`docker_secrets_flags`](#docker_secrets_flags): Transforms a hash into a string of docker swarm init flags * [`docker_service_flags`](#docker_service_flags): Transforms a hash into a string of docker swarm init flags * [`docker_stack_flags`](#docker_stack_flags): Transforms a hash into a string of docker stack flags * [`docker_swarm_init_flags`](#docker_swarm_init_flags): Transforms a hash into a string of docker swarm init flags * [`docker_swarm_join_flags`](#docker_swarm_join_flags): Transforms a hash into a string of docker swarm init flags ### Tasks * [`node_ls`](#node_ls): List nodes in the swarm * [`node_rm`](#node_rm): Update a node * [`node_update`](#node_update): Update a node * [`service_create`](#service_create): Create a new Docker service * [`service_rm`](#service_rm): Remove one replicated service * [`service_scale`](#service_scale): Scale one replicated service * [`service_update`](#service_update): Updates an existing service. * [`swarm_init`](#swarm_init): Initializes a swarm * [`swarm_join`](#swarm_join): Join a swarm * [`swarm_leave`](#swarm_leave): Leave a swarm * [`swarm_token`](#swarm_token): Gets the swarm token from the server * [`swarm_update`](#swarm_update): Updates an existing service. ## Classes ### `docker` Module to install an up-to-date version of Docker from package. #### Parameters The following parameters are available in the `docker` class: * [`version`](#-docker--version) * [`ensure`](#-docker--ensure) * [`prerequired_packages`](#-docker--prerequired_packages) * [`dependent_packages`](#-docker--dependent_packages) * [`tcp_bind`](#-docker--tcp_bind) * [`tls_enable`](#-docker--tls_enable) * [`tls_verify`](#-docker--tls_verify) * [`tls_cacert`](#-docker--tls_cacert) * [`tls_cert`](#-docker--tls_cert) * [`tls_key`](#-docker--tls_key) * [`ip_forward`](#-docker--ip_forward) * [`iptables`](#-docker--iptables) * [`ip_masq`](#-docker--ip_masq) * [`icc`](#-docker--icc) * [`bip`](#-docker--bip) * [`mtu`](#-docker--mtu) * [`bridge`](#-docker--bridge) * [`fixed_cidr`](#-docker--fixed_cidr) * [`default_gateway`](#-docker--default_gateway) * [`ipv6`](#-docker--ipv6) * [`ipv6_cidr`](#-docker--ipv6_cidr) * [`default_gateway_ipv6`](#-docker--default_gateway_ipv6) * [`socket_bind`](#-docker--socket_bind) * [`log_level`](#-docker--log_level) * [`log_driver`](#-docker--log_driver) * [`log_opt`](#-docker--log_opt) * [`selinux_enabled`](#-docker--selinux_enabled) * [`use_upstream_package_source`](#-docker--use_upstream_package_source) * [`pin_upstream_package_source`](#-docker--pin_upstream_package_source) * [`apt_source_pin_level`](#-docker--apt_source_pin_level) * [`service_state`](#-docker--service_state) * [`service_enable`](#-docker--service_enable) * [`manage_service`](#-docker--manage_service) * [`root_dir`](#-docker--root_dir) * [`dns`](#-docker--dns) * [`dns_search`](#-docker--dns_search) * [`socket_group`](#-docker--socket_group) * [`extra_parameters`](#-docker--extra_parameters) * [`shell_values`](#-docker--shell_values) * [`proxy`](#-docker--proxy) * [`no_proxy`](#-docker--no_proxy) * [`storage_driver`](#-docker--storage_driver) * [`dm_basesize`](#-docker--dm_basesize) * [`dm_fs`](#-docker--dm_fs) * [`dm_mkfsarg`](#-docker--dm_mkfsarg) * [`dm_mountopt`](#-docker--dm_mountopt) * [`dm_blocksize`](#-docker--dm_blocksize) * [`dm_loopdatasize`](#-docker--dm_loopdatasize) * [`dm_loopmetadatasize`](#-docker--dm_loopmetadatasize) * [`dm_datadev`](#-docker--dm_datadev) * [`dm_metadatadev`](#-docker--dm_metadatadev) * [`dm_thinpooldev`](#-docker--dm_thinpooldev) * [`dm_use_deferred_removal`](#-docker--dm_use_deferred_removal) * [`dm_use_deferred_deletion`](#-docker--dm_use_deferred_deletion) * [`dm_blkdiscard`](#-docker--dm_blkdiscard) * [`dm_override_udev_sync_check`](#-docker--dm_override_udev_sync_check) * [`overlay2_override_kernel_check`](#-docker--overlay2_override_kernel_check) * [`manage_package`](#-docker--manage_package) * [`service_name`](#-docker--service_name) * [`docker_users`](#-docker--docker_users) * [`create_user`](#-docker--create_user) * [`docker_group`](#-docker--docker_group) * [`daemon_environment_files`](#-docker--daemon_environment_files) * [`repo_opt`](#-docker--repo_opt) * [`storage_devs`](#-docker--storage_devs) * [`storage_vg`](#-docker--storage_vg) * [`storage_root_size`](#-docker--storage_root_size) * [`storage_data_size`](#-docker--storage_data_size) * [`storage_min_data_size`](#-docker--storage_min_data_size) * [`storage_chunk_size`](#-docker--storage_chunk_size) * [`storage_growpart`](#-docker--storage_growpart) * [`storage_auto_extend_pool`](#-docker--storage_auto_extend_pool) * [`storage_pool_autoextend_threshold`](#-docker--storage_pool_autoextend_threshold) * [`storage_pool_autoextend_percent`](#-docker--storage_pool_autoextend_percent) * [`tmp_dir_config`](#-docker--tmp_dir_config) * [`tmp_dir`](#-docker--tmp_dir) * [`registry_mirror`](#-docker--registry_mirror) * [`nuget_package_provider_version`](#-docker--nuget_package_provider_version) * [`docker_msft_provider_version`](#-docker--docker_msft_provider_version) * [`docker_ce_start_command`](#-docker--docker_ce_start_command) * [`docker_ce_package_name`](#-docker--docker_ce_package_name) * [`docker_ce_cli_package_name`](#-docker--docker_ce_cli_package_name) * [`docker_ce_source_location`](#-docker--docker_ce_source_location) * [`docker_ce_key_source`](#-docker--docker_ce_key_source) * [`docker_ce_key_id`](#-docker--docker_ce_key_id) * [`docker_ce_release`](#-docker--docker_ce_release) * [`docker_package_location`](#-docker--docker_package_location) * [`docker_package_key_source`](#-docker--docker_package_key_source) * [`docker_package_key_check_source`](#-docker--docker_package_key_check_source) * [`docker_package_key_id`](#-docker--docker_package_key_id) * [`docker_package_release`](#-docker--docker_package_release) * [`docker_engine_start_command`](#-docker--docker_engine_start_command) * [`docker_engine_package_name`](#-docker--docker_engine_package_name) * [`docker_ce_channel`](#-docker--docker_ce_channel) * [`docker_ee`](#-docker--docker_ee) * [`docker_ee_package_name`](#-docker--docker_ee_package_name) * [`docker_ee_source_location`](#-docker--docker_ee_source_location) * [`docker_ee_key_source`](#-docker--docker_ee_key_source) * [`docker_ee_key_id`](#-docker--docker_ee_key_id) * [`docker_ee_repos`](#-docker--docker_ee_repos) * [`docker_ee_release`](#-docker--docker_ee_release) * [`package_release`](#-docker--package_release) * [`labels`](#-docker--labels) * [`execdriver`](#-docker--execdriver) * [`package_source`](#-docker--package_source) * [`os_lc`](#-docker--os_lc) * [`storage_config`](#-docker--storage_config) * [`storage_config_template`](#-docker--storage_config_template) * [`storage_setup_file`](#-docker--storage_setup_file) * [`service_provider`](#-docker--service_provider) * [`service_config`](#-docker--service_config) * [`service_config_template`](#-docker--service_config_template) * [`service_overrides_template`](#-docker--service_overrides_template) * [`socket_overrides_template`](#-docker--socket_overrides_template) * [`socket_override`](#-docker--socket_override) * [`service_after_override`](#-docker--service_after_override) * [`service_hasstatus`](#-docker--service_hasstatus) * [`service_hasrestart`](#-docker--service_hasrestart) * [`acknowledge_unsupported_os`](#-docker--acknowledge_unsupported_os) * [`have_systemd_v230`](#-docker--have_systemd_v230) ##### `version` Data type: `Optional[String]` The package version to install, used to set the package name. Default value: `$docker::params::version` ##### `ensure` Data type: `String` Passed to the docker package. Default value: `$docker::params::ensure` ##### `prerequired_packages` Data type: `Variant[Array[String], Hash]` An array of additional packages that need to be installed to support docker. Default value: `$docker::params::prerequired_packages` ##### `dependent_packages` Data type: `Array` An array of packages installed by the docker-ce package v 18.09 and later. Used when uninstalling to ensure containers cannot be run on the system. Default value: `$docker::params::dependent_packages` ##### `tcp_bind` Data type: `Optional[Variant[String,Array[String]]]` The tcp socket to bind to in the format tcp://127.0.0.1:4243 Default value: `$docker::params::tcp_bind` ##### `tls_enable` Data type: `Boolean` Enable TLS. Default value: `$docker::params::tls_enable` ##### `tls_verify` Data type: `Boolean` Use TLS and verify the remote Default value: `$docker::params::tls_verify` ##### `tls_cacert` Data type: `Optional[String]` Path to TLS CA certificate Default value: `$docker::params::tls_cacert` ##### `tls_cert` Data type: `Optional[String]` Path to TLS certificate file Default value: `$docker::params::tls_cert` ##### `tls_key` Data type: `Optional[String]` Path to TLS key file Default value: `$docker::params::tls_key` ##### `ip_forward` Data type: `Boolean` Enables IP forwarding on the Docker host. Default value: `$docker::params::ip_forward` ##### `iptables` Data type: `Boolean` Enable Docker's addition of iptables rules. Default value: `$docker::params::iptables` ##### `ip_masq` Data type: `Boolean` Enable IP masquerading for bridge's IP range. Default value: `$docker::params::ip_masq` ##### `icc` Data type: `Optional[Boolean]` Enable or disable Docker's unrestricted inter-container and Docker daemon host communication. (Requires iptables=true to disable) Default value: `$docker::params::icc` ##### `bip` Data type: `Optional[String]` Specify docker's network bridge IP, in CIDR notation. Default value: `$docker::params::bip` ##### `mtu` Data type: `Optional[String]` Docker network MTU. Default value: `$docker::params::mtu` ##### `bridge` Data type: `Optional[String]` Attach containers to a pre-existing network bridge use 'none' to disable container networking Default value: `$docker::params::bridge` ##### `fixed_cidr` Data type: `Optional[String]` IPv4 subnet for fixed IPs 10.20.0.0/16 Default value: `$docker::params::fixed_cidr` ##### `default_gateway` Data type: `Optional[String]` IPv4 address of the container default gateway; this address must be part of the bridge subnet (which is defined by bridge) Default value: `$docker::params::default_gateway` ##### `ipv6` Data type: `Optional[Boolean]` Enables ipv6 support for the docker daemon Default value: `$docker::params::ipv6` ##### `ipv6_cidr` Data type: `Optional[String]` IPv6 subnet for fixed IPs Default value: `$docker::params::ipv6_cidr` ##### `default_gateway_ipv6` Data type: `Optional[String]` IPv6 address of the container default gateway: Default value: `$docker::params::default_gateway_ipv6` ##### `socket_bind` Data type: `String` The unix socket to bind to. Default value: `$docker::params::socket_bind` ##### `log_level` Data type: `Optional[String]` Set the logging level Valid values: debug, info, warn, error, fatal Default value: `$docker::params::log_level` ##### `log_driver` Data type: `Optional[String]` Set the log driver. Docker default is json-file. Please verify the value by yourself, before setting it. Valid shipped log drivers can be found here: https://docs.docker.com/config/containers/logging/configure/#supported-logging-drivers Since custom log driver plugins are and must be possible, the value can not be verified through code here. Default value: `$docker::params::log_driver` ##### `log_opt` Data type: `Array` Set the log driver specific options Valid values per log driver: none : undef local : max-size=[0-9+][k|m|g] max-file=[0-9+] json-file: max-size=[0-9+][k|m|g] max-file=[0-9+] syslog : syslog-address=[tcp|udp]://host:port syslog-address=unix://path syslog-facility=daemon|kern|user|mail|auth| syslog|lpr|news|uucp|cron| authpriv|ftp| local0|local1|local2|local3| local4|local5|local6|local7 syslog-tag="some_tag" journald : undef gelf : gelf-address=udp://host:port gelf-tag="some_tag" fluentd : fluentd-address=host:port fluentd-tag={{.ID}} - short container id (12 characters)| {{.FullID}} - full container id {{.Name}} - container name splunk : splunk-token= splunk-url=https://your_splunk_instance:8088 awslogs : awslogs-group= awslogs-stream= awslogs-create-group=true|false awslogs-datetime-format= - strftime expression awslogs-multiline-pattern=multiline start pattern using a regular expression tag={{.ID}} - short container id (12 characters)| {{.FullID}} - full container id {{.Name}} - container name Default value: `$docker::params::log_opt` ##### `selinux_enabled` Data type: `Optional[Boolean]` Enable selinux support. Default is false. SELinux does not presently support the BTRFS storage driver. Default value: `$docker::params::selinux_enabled` ##### `use_upstream_package_source` Data type: `Optional[Boolean]` Whether or not to use the upstream package source. If you run your own package mirror, you may set this to false. Default value: `$docker::params::use_upstream_package_source` ##### `pin_upstream_package_source` Data type: `Optional[Boolean]` Pin upstream package source; this option currently only has any effect on apt-based distributions. Set to false to remove pinning on the upstream package repository. See also "apt_source_pin_level". Default value: `$docker::params::pin_upstream_package_source` ##### `apt_source_pin_level` Data type: `Optional[Integer]` What level to pin our source package repository to; this only is relevent if you're on an apt-based system (Debian, Ubuntu, etc) and $use_upstream_package_source is set to true. Set this to false to disable pinning, and undef to ensure the apt preferences file apt::source uses to define pins is removed. Default value: `$docker::params::apt_source_pin_level` ##### `service_state` Data type: `String` Whether you want to docker daemon to start up Default value: `$docker::params::service_state` ##### `service_enable` Data type: `Boolean` Whether you want to docker daemon to start up at boot Default value: `$docker::params::service_enable` ##### `manage_service` Data type: `Boolean` Specify whether the service should be managed. Default value: `$docker::params::manage_service` ##### `root_dir` Data type: `Optional[String]` Custom root directory for containers Default value: `$docker::params::root_dir` ##### `dns` Data type: `Optional[Variant[String,Array]]` Custom dns server address Default value: `$docker::params::dns` ##### `dns_search` Data type: `Optional[Variant[String,Array]]` Custom dns search domains Default value: `$docker::params::dns_search` ##### `socket_group` Data type: `Optional[Variant[String,Boolean]]` Group ownership of the unix control socket. Default value: `$docker::params::socket_group` ##### `extra_parameters` Data type: `Optional[Variant[String,Array]]` Any extra parameters that should be passed to the docker daemon. Default value: `undef` ##### `shell_values` Data type: `Optional[Variant[String,Array]]` Array of shell values to pass into init script config files Default value: `undef` ##### `proxy` Data type: `Optional[String]` Will set the http_proxy and https_proxy env variables in /etc/sysconfig/docker (redhat/centos) or /etc/default/docker (debian) Default value: `$docker::params::proxy` ##### `no_proxy` Data type: `Optional[String]` Will set the no_proxy variable in /etc/sysconfig/docker (redhat/centos) or /etc/default/docker (debian) Default value: `$docker::params::no_proxy` ##### `storage_driver` Data type: `Optional[String]` Specify a storage driver to use Valid values: aufs, devicemapper, btrfs, overlay, overlay2, vfs, zfs Default value: `$docker::params::storage_driver` ##### `dm_basesize` Data type: `Optional[String]` The size to use when creating the base device, which limits the size of images and containers. Default value: `$docker::params::dm_basesize` ##### `dm_fs` Data type: `Optional[String]` The filesystem to use for the base image (xfs or ext4) Default value: `$docker::params::dm_fs` ##### `dm_mkfsarg` Data type: `Optional[String]` Specifies extra mkfs arguments to be used when creating the base device. Default value: `$docker::params::dm_mkfsarg` ##### `dm_mountopt` Data type: `Optional[String]` Specifies extra mount options used when mounting the thin devices. Default value: `$docker::params::dm_mountopt` ##### `dm_blocksize` Data type: `Optional[String]` A custom blocksize to use for the thin pool. Default blocksize is 64K. Warning: _DO NOT_ change this parameter after the lvm devices have been initialized. Default value: `$docker::params::dm_blocksize` ##### `dm_loopdatasize` Data type: `Optional[String]` Specifies the size to use when creating the loopback file for the "data" device which is used for the thin pool Default value: `$docker::params::dm_loopdatasize` ##### `dm_loopmetadatasize` Data type: `Optional[String]` Specifies the size to use when creating the loopback file for the "metadata" device which is used for the thin pool Default value: `$docker::params::dm_loopmetadatasize` ##### `dm_datadev` Data type: `Optional[String]` (deprecated - dm_thinpooldev should be used going forward) A custom blockdevice to use for data for the thin pool. Default value: `$docker::params::dm_datadev` ##### `dm_metadatadev` Data type: `Optional[String]` (deprecated - dm_thinpooldev should be used going forward) A custom blockdevice to use for metadata for the thin pool. Default value: `$docker::params::dm_metadatadev` ##### `dm_thinpooldev` Data type: `Optional[String]` Specifies a custom block storage device to use for the thin pool. Default value: `$docker::params::dm_thinpooldev` ##### `dm_use_deferred_removal` Data type: `Optional[Boolean]` Enables use of deferred device removal if libdm and the kernel driver support the mechanism. Default value: `$docker::params::dm_use_deferred_removal` ##### `dm_use_deferred_deletion` Data type: `Optional[Boolean]` Enables use of deferred device deletion if libdm and the kernel driver support the mechanism. Default value: `$docker::params::dm_use_deferred_deletion` ##### `dm_blkdiscard` Data type: `Optional[Boolean]` Enables or disables the use of blkdiscard when removing devicemapper devices. Default value: `$docker::params::dm_blkdiscard` ##### `dm_override_udev_sync_check` Data type: `Optional[Boolean]` By default, the devicemapper backend attempts to synchronize with the udev device manager for the Linux kernel. This option allows disabling that synchronization, to continue even though the configuration may be buggy. Default value: `$docker::params::dm_override_udev_sync_check` ##### `overlay2_override_kernel_check` Data type: `Boolean` Overrides the Linux kernel version check allowing using overlay2 with kernel < 4.0. Default value: `$docker::params::overlay2_override_kernel_check` ##### `manage_package` Data type: `Boolean` Won't install or define the docker package, useful if you want to use your own package Default value: `$docker::params::manage_package` ##### `service_name` Data type: `Optional[String]` Specify custom service name Default value: `$docker::params::service_name` ##### `docker_users` Data type: `Array` Specify an array of users to add to the docker group Default value: `[]` ##### `create_user` Data type: `Boolean` If `true` the list of `docker_users` will be created as well as added to the docker group Default value: `true` ##### `docker_group` Data type: `String` Specify a string for the docker group Default value: `$docker::params::docker_group` ##### `daemon_environment_files` Data type: `Array` Specify additional environment files to add to the service-overrides.conf Default value: `[]` ##### `repo_opt` Data type: `Optional[Variant[String,Hash]]` Specify a string to pass as repository options (RedHat only) Default value: `$docker::params::repo_opt` ##### `storage_devs` Data type: `Optional[String]` A quoted, space-separated list of devices to be used. Default value: `$docker::params::storage_devs` ##### `storage_vg` Data type: `Optional[String]` The volume group to use for docker storage. Default value: `$docker::params::storage_vg` ##### `storage_root_size` Data type: `Optional[String]` The size to which the root filesystem should be grown. Default value: `$docker::params::storage_root_size` ##### `storage_data_size` Data type: `Optional[String]` The desired size for the docker data LV Default value: `$docker::params::storage_data_size` ##### `storage_min_data_size` Data type: `Optional[String]` The minimum size of data volume otherwise pool creation fails Default value: `$docker::params::storage_min_data_size` ##### `storage_chunk_size` Data type: `Optional[String]` Controls the chunk size/block size of thin pool. Default value: `$docker::params::storage_chunk_size` ##### `storage_growpart` Data type: `Optional[Boolean]` Enable resizing partition table backing root volume group. Default value: `$docker::params::storage_growpart` ##### `storage_auto_extend_pool` Data type: `Optional[String]` Enable/disable automatic pool extension using lvm Default value: `$docker::params::storage_auto_extend_pool` ##### `storage_pool_autoextend_threshold` Data type: `Optional[String]` Auto pool extension threshold (in % of pool size) Default value: `$docker::params::storage_pool_autoextend_threshold` ##### `storage_pool_autoextend_percent` Data type: `Optional[String]` Extend the pool by specified percentage when threshold is hit. Default value: `$docker::params::storage_pool_autoextend_percent` ##### `tmp_dir_config` Data type: `Optional[Boolean]` Whether to set the TMPDIR value in the systemd config file Default: true (set the value); false will comment out the line. Note: false is backwards compatible prior to PR #58 Default value: `$docker::params::tmp_dir_config` ##### `tmp_dir` Data type: `Optional[String]` Sets the tmp dir for Docker (path) Default value: `$docker::params::tmp_dir` ##### `registry_mirror` Data type: `Optional[Variant[String,Array]]` Sets the prefered container registry mirror. Default value: `$docker::params::registry_mirror` ##### `nuget_package_provider_version` Data type: `Optional[String]` The version of the NuGet Package provider Default value: `$docker::params::nuget_package_provider_version` ##### `docker_msft_provider_version` Data type: `Optional[String]` The version of the Microsoft Docker Provider Module Default value: `$docker::params::docker_msft_provider_version` ##### `docker_ce_start_command` Data type: `String` Default value: `$docker::params::docker_ce_start_command` ##### `docker_ce_package_name` Data type: `Optional[String]` Default value: `$docker::params::docker_ce_package_name` ##### `docker_ce_cli_package_name` Data type: `String[1]` Default value: `$docker::params::docker_ce_cli_package_name` ##### `docker_ce_source_location` Data type: `Optional[String]` Default value: `$docker::params::package_ce_source_location` ##### `docker_ce_key_source` Data type: `Optional[String]` Default value: `$docker::params::package_ce_key_source` ##### `docker_ce_key_id` Data type: `Optional[String]` Default value: `$docker::params::package_ce_key_id` ##### `docker_ce_release` Data type: `Optional[String]` Default value: `$docker::params::package_ce_release` ##### `docker_package_location` Data type: `Optional[String]` Default value: `$docker::params::package_source_location` ##### `docker_package_key_source` Data type: `Optional[String]` Default value: `$docker::params::package_key_source` ##### `docker_package_key_check_source` Data type: `Optional[Boolean]` Default value: `$docker::params::package_key_check_source` ##### `docker_package_key_id` Data type: `Optional[String]` Default value: `$docker::params::package_key_id` ##### `docker_package_release` Data type: `Optional[String]` Default value: `$docker::params::package_release` ##### `docker_engine_start_command` Data type: `String` Default value: `$docker::params::docker_engine_start_command` ##### `docker_engine_package_name` Data type: `String` Default value: `$docker::params::docker_engine_package_name` ##### `docker_ce_channel` Data type: `String` Default value: `$docker::params::docker_ce_channel` ##### `docker_ee` Data type: `Optional[Boolean]` Default value: `$docker::params::docker_ee` ##### `docker_ee_package_name` Data type: `Optional[String]` Default value: `$docker::params::package_ee_package_name` ##### `docker_ee_source_location` Data type: `Optional[String]` Default value: `$docker::params::package_ee_source_location` ##### `docker_ee_key_source` Data type: `Optional[String]` Default value: `$docker::params::package_ee_key_source` ##### `docker_ee_key_id` Data type: `Optional[String]` Default value: `$docker::params::package_ee_key_id` ##### `docker_ee_repos` Data type: `Optional[String]` Default value: `$docker::params::package_ee_repos` ##### `docker_ee_release` Data type: `Optional[String]` Default value: `$docker::params::package_ee_release` ##### `package_release` Data type: `Optional[String]` Default value: `$docker::params::package_release` ##### `labels` Data type: `Array` Default value: `$docker::params::labels` ##### `execdriver` Data type: `Optional[String]` Default value: `$docker::params::execdriver` ##### `package_source` Data type: `Optional[String]` Default value: `$docker::params::package_source` ##### `os_lc` Data type: `Optional[String]` Default value: `$docker::params::os_lc` ##### `storage_config` Data type: `Optional[Variant[String,Boolean]]` Default value: `$docker::params::storage_config` ##### `storage_config_template` Data type: `Optional[String]` Default value: `$docker::params::storage_config_template` ##### `storage_setup_file` Data type: `Optional[String]` Default value: `$docker::params::storage_setup_file` ##### `service_provider` Data type: `Optional[String]` Default value: `$docker::params::service_provider` ##### `service_config` Data type: `Optional[Variant[String,Boolean]]` Default value: `$docker::params::service_config` ##### `service_config_template` Data type: `Optional[String]` Default value: `$docker::params::service_config_template` ##### `service_overrides_template` Data type: `Optional[Variant[String,Boolean]]` Default value: `$docker::params::service_overrides_template` ##### `socket_overrides_template` Data type: `Optional[Variant[String,Boolean]]` Default value: `$docker::params::socket_overrides_template` ##### `socket_override` Data type: `Optional[Boolean]` Default value: `$docker::params::socket_override` ##### `service_after_override` Data type: `Optional[Variant[String,Boolean]]` Default value: `$docker::params::service_after_override` ##### `service_hasstatus` Data type: `Optional[Boolean]` Default value: `$docker::params::service_hasstatus` ##### `service_hasrestart` Data type: `Optional[Boolean]` Default value: `$docker::params::service_hasrestart` ##### `acknowledge_unsupported_os` Data type: `Boolean` Default value: `false` ##### `have_systemd_v230` Data type: `Boolean` Default value: `$docker::params::have_systemd_v230` ### `docker::compose` install Docker Compose using the recommended curl command. #### Parameters The following parameters are available in the `docker::compose` class: * [`ensure`](#-docker--compose--ensure) * [`version`](#-docker--compose--version) ##### `ensure` Data type: `Enum[present,absent]` Whether to install or remove Docker Compose Valid values are absent present Default value: `present` ##### `version` Data type: `Optional[String]` The version of Docker Compose to install. Default value: `undef` ### `docker::images` The docker::images class. #### Parameters The following parameters are available in the `docker::images` class: * [`images`](#-docker--images--images) ##### `images` Data type: `Hash` ### `docker::install` Module to install an up-to-date version of Docker from a package repository. Only for Debian, Red Hat and Windows #### Parameters The following parameters are available in the `docker::install` class: * [`version`](#-docker--install--version) * [`nuget_package_provider_version`](#-docker--install--nuget_package_provider_version) * [`docker_msft_provider_version`](#-docker--install--docker_msft_provider_version) * [`docker_ee_package_name`](#-docker--install--docker_ee_package_name) * [`docker_download_url`](#-docker--install--docker_download_url) * [`dependent_packages`](#-docker--install--dependent_packages) ##### `version` Data type: `Optional[String]` The package version to install, used to set the package name. Default value: `$docker::version` ##### `nuget_package_provider_version` Data type: `Optional[String]` The version of the NuGet Package provider Default value: `$docker::nuget_package_provider_version` ##### `docker_msft_provider_version` Data type: `Optional[String]` The version of the Microsoft Docker Provider Module Default value: `$docker::docker_msft_provider_version` ##### `docker_ee_package_name` Data type: `Optional[String]` The name of the Docker Enterprise Edition package Default value: `$docker::docker_ee_package_name` ##### `docker_download_url` Data type: `Optional[String]` Default value: `$docker::package_location` ##### `dependent_packages` Data type: `Array` Default value: `$docker::dependent_packages` ### `docker::machine` install Docker Machine using the recommended curl command. #### Parameters The following parameters are available in the `docker::machine` class: * [`ensure`](#-docker--machine--ensure) * [`version`](#-docker--machine--version) * [`install_path`](#-docker--machine--install_path) * [`proxy`](#-docker--machine--proxy) * [`url`](#-docker--machine--url) * [`curl_ensure`](#-docker--machine--curl_ensure) ##### `ensure` Data type: `Enum[present,absent]` Whether to install or remove Docker Machine Valid values are absent present Default value: `'present'` ##### `version` Data type: `Optional[String]` The version of Docker Machine to install. Default value: `$docker::params::machine_version` ##### `install_path` Data type: `Optional[String]` The path where to install Docker Machine. Default value: `$docker::params::machine_install_path` ##### `proxy` Data type: `Optional[Pattern['^((http[s]?)?:\/\/)?([^:^@]+:[^:^@]+@|)([\da-z\.-]+)\.([\da-z\.]{2,6})(:[\d])?([\/\w \.-]*)*\/?$']]` Proxy to use for downloading Docker Machine. Default value: `undef` ##### `url` Data type: `Optional[Variant[Stdlib::HTTPUrl, Stdlib::HTTPSUrl]]` The URL from which the docker machine binary should be fetched Default value: `undef` ##### `curl_ensure` Data type: `Optional[Boolean]` Whether or not the curl package is ensured by this module. Default value: `$docker::params::curl_ensure` ### `docker::networks` The docker::networks class. #### Parameters The following parameters are available in the `docker::networks` class: * [`networks`](#-docker--networks--networks) ##### `networks` Data type: `Optional[Hash[String, Hash]]` Default value: `undef` ### `docker::params` Default parameter values for the docker module ### `docker::plugins` The docker::plugins class. #### Parameters The following parameters are available in the `docker::plugins` class: * [`plugins`](#-docker--plugins--plugins) ##### `plugins` Data type: `Hash` ### `docker::registry_auth` The docker::registry_auth class. #### Parameters The following parameters are available in the `docker::registry_auth` class: * [`registries`](#-docker--registry_auth--registries) ##### `registries` Data type: `Hash` ### `docker::repos` The docker::repos class. #### Parameters The following parameters are available in the `docker::repos` class: * [`location`](#-docker--repos--location) * [`key_source`](#-docker--repos--key_source) * [`key_check_source`](#-docker--repos--key_check_source) * [`architecture`](#-docker--repos--architecture) ##### `location` Data type: `Optional[String]` Default value: `$docker::package_location` ##### `key_source` Data type: `Optional[String]` Default value: `$docker::package_key_source` ##### `key_check_source` Data type: `Optional[Boolean]` Default value: `$docker::package_key_check_source` ##### `architecture` Data type: `String` Default value: `$facts['os']['architecture']` ### `docker::run_instance` The docker::run_instance class. #### Parameters The following parameters are available in the `docker::run_instance` class: * [`instance`](#-docker--run_instance--instance) ##### `instance` Data type: `Hash` ### `docker::service` manage the docker service daemon #### Parameters The following parameters are available in the `docker::service` class: * [`tcp_bind`](#-docker--service--tcp_bind) * [`ip_forward`](#-docker--service--ip_forward) * [`iptables`](#-docker--service--iptables) * [`ip_masq`](#-docker--service--ip_masq) * [`socket_bind`](#-docker--service--socket_bind) * [`socket_group`](#-docker--service--socket_group) * [`root_dir`](#-docker--service--root_dir) * [`extra_parameters`](#-docker--service--extra_parameters) * [`shell_values`](#-docker--service--shell_values) * [`manage_service`](#-docker--service--manage_service) * [`docker_command`](#-docker--service--docker_command) * [`docker_start_command`](#-docker--service--docker_start_command) * [`service_name`](#-docker--service--service_name) * [`icc`](#-docker--service--icc) * [`bridge`](#-docker--service--bridge) * [`fixed_cidr`](#-docker--service--fixed_cidr) * [`default_gateway`](#-docker--service--default_gateway) * [`ipv6`](#-docker--service--ipv6) * [`ipv6_cidr`](#-docker--service--ipv6_cidr) * [`default_gateway_ipv6`](#-docker--service--default_gateway_ipv6) * [`log_level`](#-docker--service--log_level) * [`log_driver`](#-docker--service--log_driver) * [`log_opt`](#-docker--service--log_opt) * [`selinux_enabled`](#-docker--service--selinux_enabled) * [`labels`](#-docker--service--labels) * [`dns`](#-docker--service--dns) * [`dns_search`](#-docker--service--dns_search) * [`service_state`](#-docker--service--service_state) * [`service_enable`](#-docker--service--service_enable) * [`proxy`](#-docker--service--proxy) * [`no_proxy`](#-docker--service--no_proxy) * [`execdriver`](#-docker--service--execdriver) * [`bip`](#-docker--service--bip) * [`mtu`](#-docker--service--mtu) * [`storage_driver`](#-docker--service--storage_driver) * [`dm_basesize`](#-docker--service--dm_basesize) * [`dm_fs`](#-docker--service--dm_fs) * [`dm_mkfsarg`](#-docker--service--dm_mkfsarg) * [`dm_mountopt`](#-docker--service--dm_mountopt) * [`dm_blocksize`](#-docker--service--dm_blocksize) * [`dm_loopdatasize`](#-docker--service--dm_loopdatasize) * [`dm_loopmetadatasize`](#-docker--service--dm_loopmetadatasize) * [`dm_datadev`](#-docker--service--dm_datadev) * [`dm_metadatadev`](#-docker--service--dm_metadatadev) * [`tmp_dir_config`](#-docker--service--tmp_dir_config) * [`tmp_dir`](#-docker--service--tmp_dir) * [`dm_thinpooldev`](#-docker--service--dm_thinpooldev) * [`dm_use_deferred_removal`](#-docker--service--dm_use_deferred_removal) * [`dm_use_deferred_deletion`](#-docker--service--dm_use_deferred_deletion) * [`dm_blkdiscard`](#-docker--service--dm_blkdiscard) * [`dm_override_udev_sync_check`](#-docker--service--dm_override_udev_sync_check) * [`overlay2_override_kernel_check`](#-docker--service--overlay2_override_kernel_check) * [`storage_devs`](#-docker--service--storage_devs) * [`storage_vg`](#-docker--service--storage_vg) * [`storage_root_size`](#-docker--service--storage_root_size) * [`storage_data_size`](#-docker--service--storage_data_size) * [`storage_min_data_size`](#-docker--service--storage_min_data_size) * [`storage_chunk_size`](#-docker--service--storage_chunk_size) * [`storage_growpart`](#-docker--service--storage_growpart) * [`storage_auto_extend_pool`](#-docker--service--storage_auto_extend_pool) * [`storage_pool_autoextend_threshold`](#-docker--service--storage_pool_autoextend_threshold) * [`storage_pool_autoextend_percent`](#-docker--service--storage_pool_autoextend_percent) * [`storage_config`](#-docker--service--storage_config) * [`storage_config_template`](#-docker--service--storage_config_template) * [`storage_setup_file`](#-docker--service--storage_setup_file) * [`service_provider`](#-docker--service--service_provider) * [`service_config`](#-docker--service--service_config) * [`service_config_template`](#-docker--service--service_config_template) * [`service_overrides_template`](#-docker--service--service_overrides_template) * [`socket_overrides_template`](#-docker--service--socket_overrides_template) * [`socket_override`](#-docker--service--socket_override) * [`service_after_override`](#-docker--service--service_after_override) * [`service_hasstatus`](#-docker--service--service_hasstatus) * [`service_hasrestart`](#-docker--service--service_hasrestart) * [`daemon_environment_files`](#-docker--service--daemon_environment_files) * [`tls_enable`](#-docker--service--tls_enable) * [`tls_verify`](#-docker--service--tls_verify) * [`tls_cacert`](#-docker--service--tls_cacert) * [`tls_cert`](#-docker--service--tls_cert) * [`tls_key`](#-docker--service--tls_key) * [`registry_mirror`](#-docker--service--registry_mirror) * [`root_dir_flag`](#-docker--service--root_dir_flag) ##### `tcp_bind` Data type: `Optional[Variant[String,Array[String]]]` Which tcp port, if any, to bind the docker service to. Default value: `$docker::tcp_bind` ##### `ip_forward` Data type: `Boolean` This flag interacts with the IP forwarding setting on your host system's kernel Default value: `$docker::ip_forward` ##### `iptables` Data type: `Boolean` Enable Docker's addition of iptables rules Default value: `$docker::iptables` ##### `ip_masq` Data type: `Boolean` Enable IP masquerading for bridge's IP range. Default value: `$docker::ip_masq` ##### `socket_bind` Data type: `String` Which local unix socket to bind the docker service to. Default value: `$docker::socket_bind` ##### `socket_group` Data type: `Optional[Variant[String,Boolean]]` Which local unix socket to bind the docker service to. Default value: `$docker::socket_group` ##### `root_dir` Data type: `Optional[String]` Specify a non-standard root directory for docker. Default value: `$docker::root_dir` ##### `extra_parameters` Data type: `Optional[Variant[String,Array]]` Plain additional parameters to pass to the docker daemon Default value: `$docker::extra_parameters` ##### `shell_values` Data type: `Optional[Variant[String,Array]]` Array of shell values to pass into init script config files Default value: `$docker::shell_values` ##### `manage_service` Data type: `Boolean` Specify whether the service should be managed. Valid values are 'true', 'false'. Defaults to 'true'. Default value: `$docker::manage_service` ##### `docker_command` Data type: `String` Default value: `$docker::docker_command` ##### `docker_start_command` Data type: `String` Default value: `$docker::docker_start_command` ##### `service_name` Data type: `Optional[String]` Default value: `$docker::service_name` ##### `icc` Data type: `Optional[Boolean]` Default value: `$docker::icc` ##### `bridge` Data type: `Optional[String]` Default value: `$docker::bridge` ##### `fixed_cidr` Data type: `Optional[String]` Default value: `$docker::fixed_cidr` ##### `default_gateway` Data type: `Optional[String]` Default value: `$docker::default_gateway` ##### `ipv6` Data type: `Optional[Boolean]` Default value: `$docker::ipv6` ##### `ipv6_cidr` Data type: `Optional[String]` Default value: `$docker::ipv6_cidr` ##### `default_gateway_ipv6` Data type: `Optional[String]` Default value: `$docker::default_gateway_ipv6` ##### `log_level` Data type: `Optional[String]` Default value: `$docker::log_level` ##### `log_driver` Data type: `Optional[String]` Default value: `$docker::log_driver` ##### `log_opt` Data type: `Array` Default value: `$docker::log_opt` ##### `selinux_enabled` Data type: `Optional[Boolean]` Default value: `$docker::selinux_enabled` ##### `labels` Data type: `Array` Default value: `$docker::labels` ##### `dns` Data type: `Optional[Variant[String,Array]]` Default value: `$docker::dns` ##### `dns_search` Data type: `Optional[Variant[String,Array]]` Default value: `$docker::dns_search` ##### `service_state` Data type: `String` Default value: `$docker::service_state` ##### `service_enable` Data type: `Boolean` Default value: `$docker::service_enable` ##### `proxy` Data type: `Optional[String]` Default value: `$docker::proxy` ##### `no_proxy` Data type: `Optional[String]` Default value: `$docker::no_proxy` ##### `execdriver` Data type: `Optional[String]` Default value: `$docker::execdriver` ##### `bip` Data type: `Optional[String]` Default value: `$docker::bip` ##### `mtu` Data type: `Optional[String]` Default value: `$docker::mtu` ##### `storage_driver` Data type: `Optional[String]` Default value: `$docker::storage_driver` ##### `dm_basesize` Data type: `Optional[String]` Default value: `$docker::dm_basesize` ##### `dm_fs` Data type: `Optional[String]` Default value: `$docker::dm_fs` ##### `dm_mkfsarg` Data type: `Optional[String]` Default value: `$docker::dm_mkfsarg` ##### `dm_mountopt` Data type: `Optional[String]` Default value: `$docker::dm_mountopt` ##### `dm_blocksize` Data type: `Optional[String]` Default value: `$docker::dm_blocksize` ##### `dm_loopdatasize` Data type: `Optional[String]` Default value: `$docker::dm_loopdatasize` ##### `dm_loopmetadatasize` Data type: `Optional[String]` Default value: `$docker::dm_loopmetadatasize` ##### `dm_datadev` Data type: `Optional[String]` Default value: `$docker::dm_datadev` ##### `dm_metadatadev` Data type: `Optional[String]` Default value: `$docker::dm_metadatadev` ##### `tmp_dir_config` Data type: `Optional[Boolean]` Default value: `$docker::tmp_dir_config` ##### `tmp_dir` Data type: `Optional[String]` Default value: `$docker::tmp_dir` ##### `dm_thinpooldev` Data type: `Optional[String]` Default value: `$docker::dm_thinpooldev` ##### `dm_use_deferred_removal` Data type: `Optional[Boolean]` Default value: `$docker::dm_use_deferred_removal` ##### `dm_use_deferred_deletion` Data type: `Optional[Boolean]` Default value: `$docker::dm_use_deferred_deletion` ##### `dm_blkdiscard` Data type: `Optional[Boolean]` Default value: `$docker::dm_blkdiscard` ##### `dm_override_udev_sync_check` Data type: `Optional[Boolean]` Default value: `$docker::dm_override_udev_sync_check` ##### `overlay2_override_kernel_check` Data type: `Boolean` Default value: `$docker::overlay2_override_kernel_check` ##### `storage_devs` Data type: `Optional[String]` Default value: `$docker::storage_devs` ##### `storage_vg` Data type: `Optional[String]` Default value: `$docker::storage_vg` ##### `storage_root_size` Data type: `Optional[String]` Default value: `$docker::storage_root_size` ##### `storage_data_size` Data type: `Optional[String]` Default value: `$docker::storage_data_size` ##### `storage_min_data_size` Data type: `Optional[String]` Default value: `$docker::storage_min_data_size` ##### `storage_chunk_size` Data type: `Optional[String]` Default value: `$docker::storage_chunk_size` ##### `storage_growpart` Data type: `Optional[Boolean]` Default value: `$docker::storage_growpart` ##### `storage_auto_extend_pool` Data type: `Optional[String]` Default value: `$docker::storage_auto_extend_pool` ##### `storage_pool_autoextend_threshold` Data type: `Optional[String]` Default value: `$docker::storage_pool_autoextend_threshold` ##### `storage_pool_autoextend_percent` Data type: `Optional[String]` Default value: `$docker::storage_pool_autoextend_percent` ##### `storage_config` Data type: `Optional[Variant[String,Boolean]]` Default value: `$docker::storage_config` ##### `storage_config_template` Data type: `Optional[String]` Default value: `$docker::storage_config_template` ##### `storage_setup_file` Data type: `Optional[String]` Default value: `$docker::storage_setup_file` ##### `service_provider` Data type: `Optional[String]` Default value: `$docker::service_provider` ##### `service_config` Data type: `Optional[Variant[String,Boolean]]` Default value: `$docker::service_config` ##### `service_config_template` Data type: `Optional[String]` Default value: `$docker::service_config_template` ##### `service_overrides_template` Data type: `Optional[Variant[String,Boolean]]` Default value: `$docker::service_overrides_template` ##### `socket_overrides_template` Data type: `Optional[Variant[String,Boolean]]` Default value: `$docker::socket_overrides_template` ##### `socket_override` Data type: `Optional[Boolean]` Default value: `$docker::socket_override` ##### `service_after_override` Data type: `Optional[Variant[String,Boolean]]` Default value: `$docker::service_after_override` ##### `service_hasstatus` Data type: `Optional[Boolean]` Default value: `$docker::service_hasstatus` ##### `service_hasrestart` Data type: `Optional[Boolean]` Default value: `$docker::service_hasrestart` ##### `daemon_environment_files` Data type: `Array` Default value: `$docker::daemon_environment_files` ##### `tls_enable` Data type: `Boolean` Default value: `$docker::tls_enable` ##### `tls_verify` Data type: `Boolean` Default value: `$docker::tls_verify` ##### `tls_cacert` Data type: `Optional[String]` Default value: `$docker::tls_cacert` ##### `tls_cert` Data type: `Optional[String]` Default value: `$docker::tls_cert` ##### `tls_key` Data type: `Optional[String]` Default value: `$docker::tls_key` ##### `registry_mirror` Data type: `Optional[Variant[String,Array]]` Default value: `$docker::registry_mirror` ##### `root_dir_flag` Data type: `String` Default value: `$docker::root_dir_flag` ### `docker::swarms` The docker::swarms class. #### Parameters The following parameters are available in the `docker::swarms` class: * [`swarms`](#-docker--swarms--swarms) ##### `swarms` Data type: `Hash` ### `docker::systemd_reload` For systems that have systemd ### `docker::volumes` The docker::volumes class. #### Parameters The following parameters are available in the `docker::volumes` class: * [`volumes`](#-docker--volumes--volumes) ##### `volumes` Data type: `Hash` ## Defined types ### `docker::exec` A define which executes a command inside a container. #### Parameters The following parameters are available in the `docker::exec` defined type: * [`detach`](#-docker--exec--detach) * [`interactive`](#-docker--exec--interactive) * [`env`](#-docker--exec--env) * [`tty`](#-docker--exec--tty) * [`container`](#-docker--exec--container) * [`command`](#-docker--exec--command) * [`unless`](#-docker--exec--unless) * [`sanitise_name`](#-docker--exec--sanitise_name) * [`refreshonly`](#-docker--exec--refreshonly) * [`onlyif`](#-docker--exec--onlyif) ##### `detach` Data type: `Boolean` Default value: `false` ##### `interactive` Data type: `Boolean` Default value: `false` ##### `env` Data type: `Array` Default value: `[]` ##### `tty` Data type: `Boolean` Default value: `false` ##### `container` Data type: `Optional[String]` Default value: `undef` ##### `command` Data type: `Optional[String]` Default value: `undef` ##### `unless` Data type: `Optional[String]` Default value: `undef` ##### `sanitise_name` Data type: `Boolean` Default value: `true` ##### `refreshonly` Data type: `Boolean` Default value: `false` ##### `onlyif` Data type: `Optional[String]` Default value: `undef` ### `docker::image` Module to install an up-to-date version of a Docker image from the registry #### Parameters The following parameters are available in the `docker::image` defined type: * [`ensure`](#-docker--image--ensure) * [`image`](#-docker--image--image) * [`image_tag`](#-docker--image--image_tag) * [`image_digest`](#-docker--image--image_digest) * [`docker_file`](#-docker--image--docker_file) * [`docker_tar`](#-docker--image--docker_tar) * [`force`](#-docker--image--force) * [`docker_dir`](#-docker--image--docker_dir) ##### `ensure` Data type: `Enum[present,absent,latest]` Whether you want the image present or absent. Default value: `'present'` ##### `image` Data type: `Optional[Pattern[/^[\S]*$/]]` If you want the name of the image to be different from the name of the puppet resource you can pass a value here. Default value: `$title` ##### `image_tag` Data type: `Optional[String]` If you want a specific tag of the image to be installed Default value: `undef` ##### `image_digest` Data type: `Optional[String]` If you want a specific content digest of the image to be installed Default value: `undef` ##### `docker_file` Data type: `Optional[String]` If you want to add a docker image from specific docker file Default value: `undef` ##### `docker_tar` Data type: `Optional[String]` If you want to load a docker image from specific docker tar Default value: `undef` ##### `force` Data type: `Boolean` Default value: `false` ##### `docker_dir` Data type: `Optional[String]` Default value: `undef` ### `docker::plugin` A define that manages a docker plugin #### Parameters The following parameters are available in the `docker::plugin` defined type: * [`plugin_name`](#-docker--plugin--plugin_name) * [`enabled`](#-docker--plugin--enabled) * [`timeout`](#-docker--plugin--timeout) * [`plugin_alias`](#-docker--plugin--plugin_alias) * [`disable_on_install`](#-docker--plugin--disable_on_install) * [`disable_content_trust`](#-docker--plugin--disable_content_trust) * [`grant_all_permissions`](#-docker--plugin--grant_all_permissions) * [`force_remove`](#-docker--plugin--force_remove) * [`settings`](#-docker--plugin--settings) * [`ensure`](#-docker--plugin--ensure) ##### `plugin_name` Data type: `String` This ensures whether the plugin is installed or not. Note that the default behaviour of docker plugin requires a plugin be disabled before it can be removed Default value: `$title` ##### `enabled` Data type: `Boolean` A setting to enable or disable an installed plugin. Default value: `true` ##### `timeout` Data type: `Optional[String]` The number of seconds to wait when enabling a plugin Default value: `undef` ##### `plugin_alias` Data type: `Optional[String]` An alternative name to use for an installed plugin Default value: `undef` ##### `disable_on_install` Data type: `Boolean` Alters the default behaviour of enabling a plugin upon install Default value: `false` ##### `disable_content_trust` Data type: `Boolean` Skip image verification Default value: `true` ##### `grant_all_permissions` Data type: `Boolean` Grant all permissions necessary to run the plugin Default value: `true` ##### `force_remove` Data type: `Boolean` Force the removal of an active plugin Default value: `true` ##### `settings` Data type: `Array` Any additional settings to pass to the plugin during install Default value: `[]` ##### `ensure` Data type: `Enum[present,absent]` Default value: `'present'` ### `docker::registry` Module to configure private docker registries from which to pull Docker images #### Parameters The following parameters are available in the `docker::registry` defined type: * [`server`](#-docker--registry--server) * [`ensure`](#-docker--registry--ensure) * [`username`](#-docker--registry--username) * [`password`](#-docker--registry--password) * [`pass_hash`](#-docker--registry--pass_hash) * [`email`](#-docker--registry--email) * [`local_user`](#-docker--registry--local_user) * [`local_user_home`](#-docker--registry--local_user_home) * [`receipt`](#-docker--registry--receipt) * [`version`](#-docker--registry--version) ##### `server` Data type: `Optional[String]` The hostname and port of the private Docker registry. Ex: dockerreg:5000 Default value: `$title` ##### `ensure` Data type: `Enum[present,absent]` Whether or not you want to login or logout of a repository Default value: `'present'` ##### `username` Data type: `Optional[String]` Username for authentication to private Docker registry. auth is not required. Default value: `undef` ##### `password` Data type: `Optional[String]` Password for authentication to private Docker registry. Leave undef if auth is not required. Default value: `undef` ##### `pass_hash` Data type: `Optional[String]` The hash to be used for receipt. If left as undef, a hash will be generated Default value: `undef` ##### `email` Data type: `Optional[String]` Email for registration to private Docker registry. Leave undef if auth is not required. Default value: `undef` ##### `local_user` Data type: `String` The local user to log in as. Docker will store credentials in this users home directory Default value: `'root'` ##### `local_user_home` Data type: `Optional[String]` The local user home directory. Default value: `undef` ##### `receipt` Data type: `Boolean` Required to be true for idempotency Default value: `true` ##### `version` Data type: `Optional[String]` Default value: `$docker::version` ### `docker::run` Sets a restart policy on the docker run. Note: If set, puppet will NOT setup an init script to manage, instead it will do a raw docker run command using a CID file to track the container ID. If you want a normal named container with an init script and a restart policy you must use the extra_parameters feature and pass it in like this: extra_parameters => ['--restart=always'] However, if your system is using sytemd this restart policy will be ineffective because the ExecStop commands will run which will cause docker to stop restarting it. In this case you should use the systemd_restart option to specify the policy you want. This will allow the docker container to be restarted if it dies, without puppet help. (optional) Specifies the command to execute to check that the container is healthy using the docker health check functionality. Default: undef (optional) Specifies the interval that the health check command will execute in seconds. Default: undef (optional) Checks the health status of Docker container and if it is unhealthy the service will be restarted. The health_check_cmd parameter must be set to true to use this functionality. Default: undef The docker network to attach to a container. Can be a String or Array (if using multiple networks) Default: bridge An array of additional command line arguments to pass to the `docker run` command. Useful for adding additional new or experimental options that the module does not yet support. (optional) If the container is to be managed by a systemd unit file set the Restart option on the unit file. Can be any valid value for this systemd configuration. Most commonly used are on-failure or always. Default: on-failure (optional) Specify an additional unless for the Docker run command when using restart. Default: undef (optional) Specifies the command to execute after container is created but before it is started. Default: undef (optional) If the container is to be managed by a systemd unit file set the RemainAfterExit option on the unit file. Can be any valid value for this systemd configuration. Default: Not included in unit file (optional) Prepare the service and enable it as usual but do not run it right away. Useful when building VM images using masterless Puppet and then letting the Docker images to be downloaded when a new VM is created. Default: false #### Parameters The following parameters are available in the `docker::run` defined type: * [`restart`](#-docker--run--restart) * [`verify_digest`](#-docker--run--verify_digest) * [`service_prefix`](#-docker--run--service_prefix) * [`restart_service`](#-docker--run--restart_service) * [`restart_service_on_docker_refresh`](#-docker--run--restart_service_on_docker_refresh) * [`manage_service`](#-docker--run--manage_service) * [`docker_service`](#-docker--run--docker_service) * [`health_check_cmd`](#-docker--run--health_check_cmd) * [`health_check_interval`](#-docker--run--health_check_interval) * [`restart_on_unhealthy`](#-docker--run--restart_on_unhealthy) * [`net`](#-docker--run--net) * [`extra_parameters`](#-docker--run--extra_parameters) * [`systemd_restart`](#-docker--run--systemd_restart) * [`custom_unless`](#-docker--run--custom_unless) * [`after_create`](#-docker--run--after_create) * [`remain_after_exit`](#-docker--run--remain_after_exit) * [`prepare_service_only`](#-docker--run--prepare_service_only) * [`image`](#-docker--run--image) * [`ensure`](#-docker--run--ensure) * [`command`](#-docker--run--command) * [`memory_limit`](#-docker--run--memory_limit) * [`cpuset`](#-docker--run--cpuset) * [`ports`](#-docker--run--ports) * [`labels`](#-docker--run--labels) * [`expose`](#-docker--run--expose) * [`volumes`](#-docker--run--volumes) * [`links`](#-docker--run--links) * [`use_name`](#-docker--run--use_name) * [`running`](#-docker--run--running) * [`volumes_from`](#-docker--run--volumes_from) * [`username`](#-docker--run--username) * [`hostname`](#-docker--run--hostname) * [`env`](#-docker--run--env) * [`env_file`](#-docker--run--env_file) * [`dns`](#-docker--run--dns) * [`dns_search`](#-docker--run--dns_search) * [`lxc_conf`](#-docker--run--lxc_conf) * [`service_provider`](#-docker--run--service_provider) * [`disable_network`](#-docker--run--disable_network) * [`privileged`](#-docker--run--privileged) * [`detach`](#-docker--run--detach) * [`extra_systemd_parameters`](#-docker--run--extra_systemd_parameters) * [`pull_on_start`](#-docker--run--pull_on_start) * [`after`](#-docker--run--after) * [`after_service`](#-docker--run--after_service) * [`depends`](#-docker--run--depends) * [`depend_services`](#-docker--run--depend_services) * [`tty`](#-docker--run--tty) * [`socket_connect`](#-docker--run--socket_connect) * [`hostentries`](#-docker--run--hostentries) * [`before_start`](#-docker--run--before_start) * [`before_stop`](#-docker--run--before_stop) * [`after_start`](#-docker--run--after_start) * [`after_stop`](#-docker--run--after_stop) * [`remove_container_on_start`](#-docker--run--remove_container_on_start) * [`remove_container_on_stop`](#-docker--run--remove_container_on_stop) * [`remove_volume_on_start`](#-docker--run--remove_volume_on_start) * [`remove_volume_on_stop`](#-docker--run--remove_volume_on_stop) * [`stop_wait_time`](#-docker--run--stop_wait_time) * [`syslog_identifier`](#-docker--run--syslog_identifier) * [`syslog_facility`](#-docker--run--syslog_facility) * [`read_only`](#-docker--run--read_only) ##### `restart` Data type: `Optional[String]` Default value: `undef` ##### `verify_digest` Data type: `Optional[String]` (optional) Make sure, that the image has not modified. Compares the digest checksum before starting the docker image. To get the digest of an image, run the following command: docker image inspect <> --format='{{index .RepoDigests 0}} Default value: `undef` ##### `service_prefix` Data type: `String` (optional) The name to prefix the startup script with and the Puppet service resource title with. Default: 'docker-' Default value: `'docker-'` ##### `restart_service` Data type: `Boolean` (optional) Whether or not to restart the service if the the generated init script changes. Default: true Default value: `true` ##### `restart_service_on_docker_refresh` Data type: `Boolean` Whether or not to restart the service if the docker service is restarted. Only has effect if the docker_service parameter is set. Default: true Default value: `true` ##### `manage_service` Data type: `Boolean` (optional) Whether or not to create a puppet Service resource for the init script. Disabling this may be useful if integrating with existing modules. Default: true Default value: `true` ##### `docker_service` Data type: `Variant[String,Boolean]` (optional) If (and how) the Docker service itself is managed by Puppet true -> Service['docker'] false -> no Service dependency anything else -> Service[docker_service] Default: false Default value: `false` ##### `health_check_cmd` Data type: `Optional[String]` Default value: `undef` ##### `health_check_interval` Data type: `Optional[Integer]` Default value: `undef` ##### `restart_on_unhealthy` Data type: `Boolean` Default value: `false` ##### `net` Data type: `Variant[String,Array[String[1],1],Undef]` Default value: `undef` ##### `extra_parameters` Data type: `Optional[Variant[String,Array[String]]]` Default value: `undef` ##### `systemd_restart` Data type: `String` Default value: `'on-failure'` ##### `custom_unless` Data type: `Variant[String,Array]` Default value: `[]` ##### `after_create` Data type: `Optional[String]` Default value: `undef` ##### `remain_after_exit` Data type: `Optional[String]` Default value: `undef` ##### `prepare_service_only` Data type: `Boolean` Default value: `false` ##### `image` Data type: `Optional[Pattern[/^[\S]*$/]]` Default value: `undef` ##### `ensure` Data type: `Enum[present,absent]` Default value: `'present'` ##### `command` Data type: `Optional[String]` Default value: `undef` ##### `memory_limit` Data type: `Pattern[/^[\d]*(b|k|m|g)$/]` Default value: `'0b'` ##### `cpuset` Data type: `Variant[String,Array,Undef]` Default value: `[]` ##### `ports` Data type: `Variant[String,Array,Undef]` Default value: `[]` ##### `labels` Data type: `Variant[String,Array,Undef]` Default value: `[]` ##### `expose` Data type: `Variant[String,Array,Undef]` Default value: `[]` ##### `volumes` Data type: `Variant[String,Array,Undef]` Default value: `[]` ##### `links` Data type: `Variant[String,Array,Undef]` Default value: `[]` ##### `use_name` Data type: `Boolean` Default value: `false` ##### `running` Data type: `Boolean` Default value: `true` ##### `volumes_from` Data type: `Variant[String,Array]` Default value: `[]` ##### `username` Data type: `Variant[String,Boolean]` Default value: `false` ##### `hostname` Data type: `Variant[String,Boolean]` Default value: `false` ##### `env` Data type: `Variant[String,Array]` Default value: `[]` ##### `env_file` Data type: `Variant[String,Array]` Default value: `[]` ##### `dns` Data type: `Variant[String,Array]` Default value: `[]` ##### `dns_search` Data type: `Variant[String,Array]` Default value: `[]` ##### `lxc_conf` Data type: `Variant[String,Array]` Default value: `[]` ##### `service_provider` Data type: `Optional[String]` Default value: `undef` ##### `disable_network` Data type: `Boolean` Default value: `false` ##### `privileged` Data type: `Boolean` Default value: `false` ##### `detach` Data type: `Optional[Boolean]` Default value: `undef` ##### `extra_systemd_parameters` Data type: `Variant[String,Hash]` Default value: `{}` ##### `pull_on_start` Data type: `Boolean` Default value: `false` ##### `after` Data type: `Variant[String,Array]` Default value: `[]` ##### `after_service` Data type: `Variant[String,Array]` Default value: `[]` ##### `depends` Data type: `Variant[String,Array]` Default value: `[]` ##### `depend_services` Data type: `Variant[String,Array]` Default value: `['docker.service']` ##### `tty` Data type: `Boolean` Default value: `false` ##### `socket_connect` Data type: `Variant[String,Array]` Default value: `[]` ##### `hostentries` Data type: `Variant[String,Array]` Default value: `[]` ##### `before_start` Data type: `Variant[String,Boolean]` Default value: `false` ##### `before_stop` Data type: `Variant[String,Boolean]` Default value: `false` ##### `after_start` Data type: `Variant[String,Boolean]` Default value: `false` ##### `after_stop` Data type: `Variant[String,Boolean]` Default value: `false` ##### `remove_container_on_start` Data type: `Boolean` Default value: `true` ##### `remove_container_on_stop` Data type: `Boolean` Default value: `true` ##### `remove_volume_on_start` Data type: `Boolean` Default value: `false` ##### `remove_volume_on_stop` Data type: `Boolean` Default value: `false` ##### `stop_wait_time` Data type: `Integer` Default value: `10` ##### `syslog_identifier` Data type: `Optional[String]` Default value: `undef` ##### `syslog_facility` Data type: `Optional[String]` Default value: `undef` ##### `read_only` Data type: `Boolean` Default value: `false` ### `docker::secrets` The docker::secrets class. #### Parameters The following parameters are available in the `docker::secrets` defined type: * [`ensure`](#-docker--secrets--ensure) * [`label`](#-docker--secrets--label) * [`secret_name`](#-docker--secrets--secret_name) * [`secret_path`](#-docker--secrets--secret_path) ##### `ensure` Data type: `Enum[present,absent]` Default value: `'present'` ##### `label` Data type: `Variant[String,Array]` Default value: `[]` ##### `secret_name` Data type: `Optional[String]` Default value: `undef` ##### `secret_path` Data type: `Optional[String]` Default value: `undef` ### `docker::services` define that managers a Docker services #### Parameters The following parameters are available in the `docker::services` defined type: * [`ensure`](#-docker--services--ensure) * [`image`](#-docker--services--image) * [`detach`](#-docker--services--detach) * [`env`](#-docker--services--env) * [`label`](#-docker--services--label) * [`publish`](#-docker--services--publish) * [`replicas`](#-docker--services--replicas) * [`tty`](#-docker--services--tty) * [`user`](#-docker--services--user) * [`workdir`](#-docker--services--workdir) * [`extra_params`](#-docker--services--extra_params) * [`update`](#-docker--services--update) * [`scale`](#-docker--services--scale) * [`host_socket`](#-docker--services--host_socket) * [`registry_mirror`](#-docker--services--registry_mirror) * [`mounts`](#-docker--services--mounts) * [`networks`](#-docker--services--networks) * [`command`](#-docker--services--command) * [`create`](#-docker--services--create) * [`service_name`](#-docker--services--service_name) ##### `ensure` Data type: `Enum[present,absent]` This ensures that the service is present or not. Default value: `'present'` ##### `image` Data type: `Optional[Variant[String,Array]]` The Docker image to spwan the service from. Default value: `undef` ##### `detach` Data type: `Boolean` Exit immediately instead of waiting for the service to converge (default true) Default value: `true` ##### `env` Data type: `Array` Set environment variables Default value: `[]` ##### `label` Data type: `Array` Service labels. This used as metdata to configure constraints etc. Default value: `[]` ##### `publish` Data type: `Optional[Variant[String,Array]]` Publish port(s) as node ports. Default value: `undef` ##### `replicas` Data type: `Optional[Variant[String,Array]]` Number of tasks (containers per service) Default value: `undef` ##### `tty` Data type: `Boolean` Allocate a pseudo-TTY Default value: `false` ##### `user` Data type: `Optional[Variant[String,Array]]` Username or UID (format: [:]) Default value: `undef` ##### `workdir` Data type: `Optional[Variant[String,Array]]` Working directory inside the container Default value: `undef` ##### `extra_params` Data type: `Array` Allows you to pass any other flag that the Docker service create supports. This must be passed as an array. See docker service create --help for all options Default value: `[]` ##### `update` Data type: `Boolean` This changes the docker command to docker service update, you must pass a service name with this option Default value: `false` ##### `scale` Data type: `Boolean` This changes the docker command to docker service scale, this can only be used with service name and replicas Default value: `false` ##### `host_socket` Data type: `Optional[Variant[String,Array]]` This will allow the service to connect to the host linux socket. Default value: `undef` ##### `registry_mirror` Data type: `Optional[Variant[String,Array]]` This will allow the service to set a registry mirror. Default value: `undef` ##### `mounts` Data type: `Optional[Variant[String,Array]]` Allows attaching filesystem mounts to the service (specified as an array) Default value: `undef` ##### `networks` Data type: `Optional[Array]` Allows attaching the service to networks (specified as an array) Default value: `undef` ##### `command` Data type: `Optional[Variant[String,Array]]` Command to run on the container Default value: `undef` ##### `create` Data type: `Boolean` Default value: `true` ##### `service_name` Data type: `Optional[Variant[String,Array]]` Default value: `undef` ### `docker::stack` deploys Docker stacks or compose v3 #### Parameters The following parameters are available in the `docker::stack` defined type: * [`ensure`](#-docker--stack--ensure) * [`stack_name`](#-docker--stack--stack_name) * [`bundle_file`](#-docker--stack--bundle_file) * [`prune`](#-docker--stack--prune) * [`resolve_image`](#-docker--stack--resolve_image) * [`with_registry_auth`](#-docker--stack--with_registry_auth) * [`compose_files`](#-docker--stack--compose_files) ##### `ensure` Data type: `Enum[present,absent]` This ensures that the stack is present or not. Default value: `'present'` ##### `stack_name` Data type: `Optional[String]` The name of the stack that you are deploying Default value: `undef` ##### `bundle_file` Data type: `Optional[String]` Path to a Distributed Application Bundle file Please note this is experimental Default value: `undef` ##### `prune` Data type: `Boolean` Prune services that are no longer referenced Default value: `false` ##### `resolve_image` Data type: `Optional[Enum['always','changed','never']]` Query the registry to resolve image digest and supported platforms Only accepts ("always"|"changed"|"never") Default value: `undef` ##### `with_registry_auth` Data type: `Boolean` Send registry authentication details to Swarm agents Default value: `false` ##### `compose_files` Data type: `Optional[Array]` Default value: `undef` ### `docker::swarm` managers a Docker Swarm Mode cluster #### Parameters The following parameters are available in the `docker::swarm` defined type: * [`ensure`](#-docker--swarm--ensure) * [`init`](#-docker--swarm--init) * [`join`](#-docker--swarm--join) * [`advertise_addr`](#-docker--swarm--advertise_addr) * [`autolock`](#-docker--swarm--autolock) * [`cert_expiry`](#-docker--swarm--cert_expiry) * [`default_addr_pool`](#-docker--swarm--default_addr_pool) * [`default_addr_pool_mask_length`](#-docker--swarm--default_addr_pool_mask_length) * [`dispatcher_heartbeat`](#-docker--swarm--dispatcher_heartbeat) * [`external_ca`](#-docker--swarm--external_ca) * [`force_new_cluster`](#-docker--swarm--force_new_cluster) * [`listen_addr`](#-docker--swarm--listen_addr) * [`max_snapshots`](#-docker--swarm--max_snapshots) * [`snapshot_interval`](#-docker--swarm--snapshot_interval) * [`token`](#-docker--swarm--token) * [`manager_ip`](#-docker--swarm--manager_ip) ##### `ensure` Data type: `Enum[present,absent]` This ensures that the cluster is present or not. Note this forcefully removes a node from the cluster. Make sure all worker nodes have been removed before managers Default value: `'present'` ##### `init` Data type: `Boolean` This creates the first worker node for a new cluster. Set init to true to create a new cluster Default value: `false` ##### `join` Data type: `Boolean` This adds either a worker or manger node to the cluster. The role of the node is defined by the join token. Set to true to join the cluster Default value: `false` ##### `advertise_addr` Data type: `Optional[String]` The address that your node will advertise to the cluster for raft. On multihomed servers this flag must be passed Default value: `undef` ##### `autolock` Data type: `Boolean` Enable manager autolocking (requiring an unlock key to start a stopped manager) Default value: `false` ##### `cert_expiry` Data type: `Optional[String]` Validity period for node certificates (ns|us|ms|s|m|h) (default 2160h0m0s) Default value: `undef` ##### `default_addr_pool` Data type: `Optional[Array]` Array of default subnet pools for global scope networks (['30.30.0.0/16','40.40.0.0/16']) Default value: `undef` ##### `default_addr_pool_mask_length` Data type: `Optional[String]` Default subnet pools mask length for default-addr-pools (CIDR block number) Default value: `undef` ##### `dispatcher_heartbeat` Data type: `Optional[String]` Dispatcher heartbeat period (ns|us|ms|s|m|h) (default 5s) Default value: `undef` ##### `external_ca` Data type: `Optional[String]` Specifications of one or more certificate signing endpoints Default value: `undef` ##### `force_new_cluster` Data type: `Boolean` Force create a new cluster from current state Default value: `false` ##### `listen_addr` Data type: `Optional[String]` The address that your node will listen to the cluster for raft. On multihomed servers this flag must be passed Default value: `undef` ##### `max_snapshots` Data type: `Optional[String]` Number of additional Raft snapshots to retain Default value: `undef` ##### `snapshot_interval` Data type: `Optional[String]` Number of log entries between Raft snapshots (default 10000) Default value: `undef` ##### `token` Data type: `Optional[String]` The authentication token to join the cluster. The token also defines the type of node (worker or manager) Default value: `undef` ##### `manager_ip` Data type: `Optional[String]` The ip address of a manager node to join the cluster. Default value: `undef` ### `docker::system_user` manage docker group users #### Parameters The following parameters are available in the `docker::system_user` defined type: * [`create_user`](#-docker--system_user--create_user) ##### `create_user` Data type: `Boolean` Boolean to cotrol whether the user should be created Default value: `true` ### `docker::windows_account` Windows account that owns the docker services ## Resource types ### `docker_compose` A type representing a Docker Compose file #### Properties The following properties are available in the `docker_compose` type. ##### `ensure` Valid values: `present`, `absent` The basic property that the resource should be in. Default value: `present` #### Parameters The following parameters are available in the `docker_compose` type. * [`compose_files`](#-docker_compose--compose_files) * [`name`](#-docker_compose--name) * [`options`](#-docker_compose--options) * [`provider`](#-docker_compose--provider) * [`scale`](#-docker_compose--scale) * [`tmpdir`](#-docker_compose--tmpdir) * [`up_args`](#-docker_compose--up_args) ##### `compose_files` An array of Docker Compose Files paths. ##### `name` namevar The name of the project ##### `options` Additional options to be passed directly to docker-compose. ##### `provider` The specific backend to use for this `docker_compose` resource. You will seldom need to specify this --- Puppet will usually discover the appropriate provider for your platform. ##### `scale` A hash of compose services and number of containers. ##### `tmpdir` Override the temporary directory used by docker-compose. This property is useful when the /tmp directory has been mounted with the noexec option. Or is otherwise being prevented It allows the module consumer to redirect docker-composes temporary files to a known directory. The directory passed to this property must exist and be accessible by the user that is executing the puppet agent. ##### `up_args` Arguments to be passed directly to docker-compose up. ### `docker_network` Type representing a Docker network #### Properties The following properties are available in the `docker_network` type. ##### `driver` The network driver used by the network ##### `ensure` Valid values: `present`, `absent` The basic property that the resource should be in. Default value: `present` ##### `id` The ID of the network provided by Docker ##### `ipam_driver` The IPAM (IP Address Management) driver #### Parameters The following parameters are available in the `docker_network` type. * [`additional_flags`](#-docker_network--additional_flags) * [`aux_address`](#-docker_network--aux_address) * [`gateway`](#-docker_network--gateway) * [`ip_range`](#-docker_network--ip_range) * [`name`](#-docker_network--name) * [`options`](#-docker_network--options) * [`provider`](#-docker_network--provider) * [`subnet`](#-docker_network--subnet) ##### `additional_flags` Additional flags for the 'docker network create' ##### `aux_address` Auxiliary ipv4 or ipv6 addresses used by the Network driver ##### `gateway` An ipv4 or ipv6 gateway for the server subnet ##### `ip_range` The range of IP addresses used by the network ##### `name` namevar The name of the network ##### `options` Additional options for the network driver ##### `provider` The specific backend to use for this `docker_network` resource. You will seldom need to specify this --- Puppet will usually discover the appropriate provider for your platform. ##### `subnet` The subnet in CIDR format that represents a network segment ### `docker_stack` A type representing a Docker Stack #### Properties The following properties are available in the `docker_stack` type. ##### `ensure` Valid values: `present`, `absent` The basic property that the resource should be in. Default value: `present` #### Parameters The following parameters are available in the `docker_stack` type. * [`bundle_file`](#-docker_stack--bundle_file) * [`compose_files`](#-docker_stack--compose_files) * [`name`](#-docker_stack--name) * [`provider`](#-docker_stack--provider) * [`up_args`](#-docker_stack--up_args) ##### `bundle_file` Path to a Distributed Application Bundle file. ##### `compose_files` An array of Docker Compose Files paths. ##### `name` namevar The name of the stack ##### `provider` The specific backend to use for this `docker_stack` resource. You will seldom need to specify this --- Puppet will usually discover the appropriate provider for your platform. ##### `up_args` Arguments to be passed directly to docker stack deploy. ### `docker_volume` A type representing a Docker volume #### Properties The following properties are available in the `docker_volume` type. ##### `driver` The volume driver used by the volume ##### `ensure` Valid values: `present`, `absent` The basic property that the resource should be in. Default value: `present` ##### `mountpoint` The location that the volume is mounted to #### Parameters The following parameters are available in the `docker_volume` type. * [`name`](#-docker_volume--name) * [`options`](#-docker_volume--options) * [`provider`](#-docker_volume--provider) ##### `name` namevar The name of the volume ##### `options` Additional options for the volume driver ##### `provider` The specific backend to use for this `docker_volume` resource. You will seldom need to specify this --- Puppet will usually discover the appropriate provider for your platform. ## Functions ### `docker::env` Type: Ruby 4.x API The docker::env function. #### `docker::env(Array $args)` The docker::env function. Returns: `Array` ##### `args` Data type: `Array` ### `docker::escape` Type: Ruby 3.x API The docker::escape function. #### `docker::escape()` The docker::escape function. Returns: `Any` ### `docker::sanitised_name` Type: Puppet Language == Function: docker::sanitised_name Function to sanitise container name. === Parameters [*name*] Name to sanitise #### `docker::sanitised_name(Any $name)` == Function: docker::sanitised_name Function to sanitise container name. === Parameters [*name*] Name to sanitise Returns: `Any` ##### `name` Data type: `Any` ### `docker_exec_flags` Type: Ruby 3.x API Transforms a hash into a string of docker exec flags #### `docker_exec_flags()` Transforms a hash into a string of docker exec flags Returns: `Any` ### `docker_params_changed` Type: Ruby 4.x API The docker_params_changed function. #### `docker_params_changed(Hash $opts)` The docker_params_changed function. Returns: `String` ##### `opts` Data type: `Hash` ### `docker_plugin_enable_flags` Type: Ruby 3.x API Transforms a hash into a string of docker plugin remove flags #### `docker_plugin_enable_flags()` Transforms a hash into a string of docker plugin remove flags Returns: `Any` ### `docker_plugin_install_flags` Type: Ruby 3.x API Transforms a hash into a string of docker plugin install flags #### `docker_plugin_install_flags()` Transforms a hash into a string of docker plugin install flags Returns: `Any` ### `docker_plugin_remove_flags` Type: Ruby 3.x API Transforms a hash into a string of docker plugin remove flags #### `docker_plugin_remove_flags()` Transforms a hash into a string of docker plugin remove flags Returns: `Any` ### `docker_run_flags` Type: Ruby 3.x API Transforms a hash into a string of docker flags #### `docker_run_flags()` Transforms a hash into a string of docker flags Returns: `Any` ### `docker_secrets_flags` Type: Ruby 3.x API Transforms a hash into a string of docker swarm init flags #### `docker_secrets_flags()` Transforms a hash into a string of docker swarm init flags Returns: `Any` ### `docker_service_flags` Type: Ruby 3.x API Transforms a hash into a string of docker swarm init flags #### `docker_service_flags()` Transforms a hash into a string of docker swarm init flags Returns: `Any` ### `docker_stack_flags` Type: Ruby 3.x API Transforms a hash into a string of docker stack flags #### `docker_stack_flags()` Transforms a hash into a string of docker stack flags Returns: `Any` ### `docker_swarm_init_flags` Type: Ruby 3.x API Transforms a hash into a string of docker swarm init flags #### `docker_swarm_init_flags()` Transforms a hash into a string of docker swarm init flags Returns: `Any` ### `docker_swarm_join_flags` Type: Ruby 3.x API Transforms a hash into a string of docker swarm init flags #### `docker_swarm_join_flags()` Transforms a hash into a string of docker swarm init flags Returns: `Any` ## Tasks ### `node_ls` List nodes in the swarm **Supports noop?** false #### Parameters ##### `filter` Data type: `Optional[String[1]]` Filter output based on conditions provided ##### `quiet` Data type: `Optional[Boolean]` Only display IDs ### `node_rm` Update a node **Supports noop?** false #### Parameters ##### `force` Data type: `Optional[Boolean]` Force remove a node from the swarm ##### `node` Data type: `String[1]` Hostname or ID of the node in the swarm ### `node_update` Update a node **Supports noop?** false #### Parameters ##### `availability` Data type: `Optional[Enum['active', 'pause', 'drain']]` Availability of the node ##### `role` Data type: `Optional[Enum['manager', 'worker']]` Role of the node ##### `label_add` Data type: `Optional[Array]` Add or update a node label (key=value) ##### `label_rm` Data type: `Optional[Array]` Remove a node label if exists. ##### `node` Data type: `String[1]` ID of the node in the swarm ### `service_create` Create a new Docker service **Supports noop?** false #### Parameters ##### `service` Data type: `String[1]` The name of the service to create ##### `image` Data type: `String[1]` The new image to use for the service ##### `replicas` Data type: `Integer` Number of replicas ##### `expose` Data type: `Variant[String,Array,Undef]` Publish service ports externally to the swarm ##### `env` Data type: `Optional[Hash]` Set environment variables ##### `command` Data type: `Variant[String,Array,Undef]` Command to run on the container ##### `extra_params` Data type: `Optional[Array]` Allows you to pass any other flag that the Docker service create supports. ##### `detach` Data type: `Optional[Boolean]` Exit immediately instead of waiting for the service to converge ### `service_rm` Remove one replicated service **Supports noop?** false #### Parameters ##### `service` Data type: `String[1]` Name or ID of the service ### `service_scale` Scale one replicated service **Supports noop?** false #### Parameters ##### `service` Data type: `String[1]` Name or ID of the service ##### `scale` Data type: `Integer` Number of replicas ##### `detach` Data type: `Optional[Boolean]` Exit immediately instead of waiting for the service to converge ### `service_update` Updates an existing service. **Supports noop?** false #### Parameters ##### `service` Data type: `String[1]` The service to update ##### `image` Data type: `String[1]` The new image to use for the service ##### `constraint_add` Data type: `Optional[Array]` Add or update a service constraint (selector==value, selector!=value) ##### `constraint_rm` Data type: `Optional[Array]` Remove a service constraint if exists. ### `swarm_init` Initializes a swarm **Supports noop?** false #### Parameters ##### `advertise_addr` Data type: `Optional[String[1]]` Advertised address ##### `autolock` Data type: `Optional[Boolean]` Enable manager autolocking ##### `cert_expiry` Data type: `Optional[String[1]]` Validity period for node certificates ##### `dispatcher_heartbeat` Data type: `Optional[String[1]]` Dispatcher heartbeat period ##### `external_ca` Data type: `Optional[String[1]]` Specifications of one or more certificate signing endpoints ##### `force_new_cluster` Data type: `Optional[Boolean]` Force create a new cluster from current state ##### `listen_addr` Data type: `Optional[String[1]]` Listen address ##### `max_snapshots` Data type: `Optional[Integer[1]]` Number of additional Raft snapshots to retain ##### `snapshot_interval` Data type: `Optional[Integer[1]]` Number of log entries between Raft snapshots ### `swarm_join` Join a swarm **Supports noop?** false #### Parameters ##### `advertise_addr` Data type: `Optional[String[1]]` Advertised address ##### `listen_addr` Data type: `Optional[String[1]]` Listen address ##### `token` Data type: `String[1]` Join token for the swarm ##### `manager_ip` Data type: `String[1]` IP Address of the swarm manager ### `swarm_leave` Leave a swarm **Supports noop?** false #### Parameters ##### `force` Data type: `Optional[Boolean]` Force this node to leave the swarm, ignoring warnings ### `swarm_token` Gets the swarm token from the server **Supports noop?** false #### Parameters ##### `node_role` Data type: `String[1]` The role of the node joining the swarm ### `swarm_update` Updates an existing service. **Supports noop?** false #### Parameters ##### `service` Data type: `String[1]` The service to update ##### `image` Data type: `String[1]` The new image to use for the service