<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export><version>5.0</version><date>2021-11-21T21:41:27Z</date><groups><group><name>Templates</name></group></groups><templates><template><template>..Docker.OSLinux.ShortTermContainers</template><name>..Docker.OSLinux.ShortTermContainers</name><description>## Description

Monitor Docker Container Details

## Overview

Template with LLD to discover Docker Containers via Docker socket ([Template.Docker.ContainerDetails](http://127.0.0.1/zabbix/templates.php?form=update&amp;templateid=10264&amp;groupid=1)) and Template [Template..Docker.OSLinux.ShortTermContainers](http://127.0.0.1/zabbix/templates.php?form=update&amp;templateid=10265&amp;groupid=1) with macros to forget short living containers after {$DISCOVERY\_TTL}.


 



## Author

Martin Schroeter

## Overview

Template with LLD to discover Docker Containers via Docker socket ([Template.Docker.ContainerDetails](http://127.0.0.1/zabbix/templates.php?form=update&amp;templateid=10264&amp;groupid=1)) and Template [Template..Docker.OSLinux.ShortTermContainers](http://127.0.0.1/zabbix/templates.php?form=update&amp;templateid=10265&amp;groupid=1) with macros to forget short living containers after {$DISCOVERY\_TTL}.


 



## Author

Martin Schroeter

</description><templates><template><name>.Docker.ContainerDetails</name></template></templates><groups><group><name>Templates</name></group></groups><macros><macro><macro>{$DISCOVERY_TTL}</macro><value>1d</value></macro><macro><macro>{$DISCOVERY_UPDATE_INTERVAL}</macro><value>60s</value></macro><macro><macro>{$ITEM_HISTORY_STORAGE_PERIOD}</macro><value>14d</value></macro><macro><macro>{$ITEM_UPDATE_INTERVAL}</macro><value>300s</value></macro><macro><macro>{$NETWORK_ITEM_UPDATE_INTERVAL}</macro><value>60s</value></macro></macros></template><template><template>.Docker.ContainerDetails</template><name>.Docker.ContainerDetails</name><description>## Description

Monitor Docker Container Details

## Overview

Template with LLD to discover Docker Containers via Docker socket ([Template.Docker.ContainerDetails](http://127.0.0.1/zabbix/templates.php?form=update&amp;templateid=10264&amp;groupid=1)) and Template [Template..Docker.OSLinux.ShortTermContainers](http://127.0.0.1/zabbix/templates.php?form=update&amp;templateid=10265&amp;groupid=1) with macros to forget short living containers after {$DISCOVERY\_TTL}.


 



## Author

Martin Schroeter

</description><groups><group><name>Templates</name></group></groups><applications><application><name>Docker</name></application></applications><discovery_rules><discovery_rule><name>Docker Container Discovery (by Names)</name><key>system.run[echo &quot;{ \&quot;data\&quot;: `curl -s --unix-socket /var/run/docker.sock http:/containers/json| {$JQ_DOCKER_NAMES}` }&quot;]</key><delay>{$DISCOVERY_UPDATE_INTERVAL}</delay><lifetime>{$DISCOVERY_TTL}</lifetime><item_prototypes><item_prototype><name>Container: {#NAMES}</name><key>system.run[curl -s --unix-socket /var/run/docker.sock http:/containers{#NAMES}/json| jq .Created]</key><delay>30s</delay><history>30d</history><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Docker</name></application></applications><request_method>POST</request_method></item_prototype><item_prototype><name>Container: {#NAMES} - Status</name><key>system.run[curl -s --unix-socket /var/run/docker.sock http:/containers{#NAMES}/json| jq .State.Status]</key><delay>30s</delay><history>30d</history><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Docker</name></application></applications><request_method>POST</request_method></item_prototype><item_prototype><name>Container: {#NAMES} - Env.Branch</name><key>system.run[curl -s --unix-socket /var/run/docker.sock http:/containers{#NAMES}/json| {$JQ_DOCKER_ENV_BRANCH}]</key><delay>30s</delay><history>30d</history><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Docker</name></application></applications><request_method>POST</request_method></item_prototype><item_prototype><name>Container: {#NAMES} - Mounts</name><key>system.run[curl -s --unix-socket /var/run/docker.sock http:/containers{#NAMES}/json| {$JQ_DOCKER_MOUNTS}]</key><delay>30s</delay><history>30d</history><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Docker</name></application></applications><request_method>POST</request_method></item_prototype><item_prototype><name>Container: {#NAMES} - Volumes</name><key>system.run[curl -s --unix-socket /var/run/docker.sock http:/containers{#NAMES}/json| {$JQ_DOCKER_VOLUMES}]</key><delay>30s</delay><history>30d</history><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Docker</name></application></applications><request_method>POST</request_method></item_prototype></item_prototypes><request_method>POST</request_method></discovery_rule></discovery_rules><macros><macro><macro>{$JQ_DOCKER_ENV_BRANCH}</macro><value>jq .Config.Env[0]</value></macro><macro><macro>{$JQ_DOCKER_MOUNTS}</macro><value>jq .Mounts[].Destination</value></macro><macro><macro>{$JQ_DOCKER_NAMES}</macro><value>jq '[ .[].Names[0]|{ &quot;{#NAMES}&quot;: .} ]'</value></macro><macro><macro>{$JQ_DOCKER_VOLUMES}</macro><value>jq .Mounts[].Source</value></macro></macros></template></templates></zabbix_export>
