Files
docker-compose-collection/domotica/compose.yml
T
2023-09-09 14:53:02 +02:00

102 lines
4.3 KiB
YAML

services:
# Home Assistant
homeassistant:
container_name: ${HOMEASSISTANT_CONTAINER_NAME:-HomeAssistant}
image: homeassistant/home-assistant:${HOMEASSISTANT_TAG:-latest}
user: ${UID:-1024}:${GID:-101}
restart: ${RESTART:-unless-stopped}
network_mode: host
healthcheck:
test: curl -f http://localhost:8123/ || exit 1
environment:
TZ: ${TZ:-Europe/Amsterdam}
volumes:
- /${SYNOLOGY_VOLUME:-volume1}/docker/${STACK_NAME:-domotica}/${HOMEASSISTANT_CONTAINER_NAME:-HomeAssistant}/config:/config
- /${SYNOLOGY_VOLUME:-volume1}/docker/${STACK_NAME:-domotica}/${HOMEASSISTANT_CONTAINER_NAME:-HomeAssistant}/media:/media
# Zigbee2mqtt
zigbee2mqtt:
container_name: ${ZIGBEE2MQTT_CONTAINER_NAME:-Zigbee2mqtt}
image: koenkk/zigbee2mqtt:${ZIGBEE2MQTT_TAG:-latest}
user: ${UID:-1024}:${GID:-101}
restart: ${RESTART:-unless-stopped}
network_mode: host
environment:
TZ: ${TZ:-Europe/Amsterdam}
volumes:
- /${SYNOLOGY_VOLUME:-volume1}/docker/${STACK_NAME:-domotica}/${ZIGBEE2MQTT_CONTAINER_NAME:-Zigbee2mqtt}/app/data:/app/data
# Node-RED
nodered:
container_name: ${NODERED_CONTAINER_NAME:-NodeRed}
image: nodered/node-red:${NODERED_TAG:-latest}
user: ${UID:-1024}:${GID:-101}
restart: ${RESTART:-unless-stopped}
network_mode: host
environment:
TZ: ${TZ:-Europe/Amsterdam}
volumes:
- /${SYNOLOGY_VOLUME:-volume1}/docker/${STACK_NAME:-domotica}/${NODERED_CONTAINER_NAME:-NodeRed}/data:/data
# Eclipse Mosquitto
eclipsemosquitto:
container_name: ${ECLIPSEMOSQUITTO_CONTAINER_NAME:-EclipseMosquitto}
image: eclipse-mosquitto:${ECLIPSEMOSQUITTO_TAG:-latest}
user: ${UID:-1024}:${GID:-101}
restart: ${RESTART:-unless-stopped}
network_mode: host
volumes:
- /${SYNOLOGY_VOLUME:-volume1}/docker/${STACK_NAME:-domotica}/${ECLIPSEMOSQUITTO_CONTAINER_NAME:-EclipseMosquitto}/mosquitto/config:/mosquitto/config
- /${SYNOLOGY_VOLUME:-volume1}/docker/${STACK_NAME:-domotica}/${ECLIPSEMOSQUITTO_CONTAINER_NAME:-EclipseMosquitto}/mosquitto/data:/mosquitto/data
- /${SYNOLOGY_VOLUME:-volume1}/docker/${STACK_NAME:-domotica}/${ECLIPSEMOSQUITTO_CONTAINER_NAME:-EclipseMosquitto}/mosquitto/log:/mosquitto/log
# InfluxDB
influxdb:
container_name: ${INFLUXDB_CONTAINER_NAME:-InfluxDB}
image: influxdb:${INFLUXDB_TAG:-latest}
user: ${UID:-1024}:${GID:-101}
restart: ${RESTART:-unless-stopped}
network_mode: host
volumes:
- /${SYNOLOGY_VOLUME:-volume1}/docker/${STACK_NAME:-domotica}/${INFLUXDB_CONTAINER_NAME:-InfluxDB}/var/lib/influxdb2:/var/lib/influxdb2
- /${SYNOLOGY_VOLUME:-volume1}/docker/${STACK_NAME:-domotica}/${INFLUXDB_CONTAINER_NAME:-InfluxDB}/etc/influxdb2:/etc/influxdb2
# Telegraf
telegraf:
container_name: ${TELEGRAF_CONTAINER_NAME:-Telegraf}
image: telegraf:${TELEGRAF_TAG:-latest}
restart: ${RESTART:-unless-stopped}
network_mode: host
environment:
TELEGRAF_CONF_INFLUXDBV2_URL: ${TELEGRAF_CONF_INFLUXDBV2_URL:-http://localhost:8086}
TELEGRAF_CONF_INFLUXDBV2_TOKEN: $TELEGRAF_CONF_INFLUXDBV2_TOKEN
TELEGRAF_CONF_INFLUXDBV2_ORGANIZATION: $TELEGRAF_CONF_INFLUXDBV2_ORGANIZATION
TELEGRAF_CONF_INFLUXDBV2_BUCKET: $TELEGRAF_CONF_INFLUXDBV2_BUCKET
volumes:
- /${SYNOLOGY_VOLUME:-volume1}/docker/${PROJECT_NAME:-domotica}/${TELEGRAF_CONTAINER_NAME:-Telegraf}/etc/telegraf/telegraf.conf:/etc/telegraf/telegraf.conf:ro
# Grafana
grafana:
container_name: ${GRAFANA_CONTAINER_NAME:-Grafana}
image: grafana/grafana:${GRAFANA_TAG:-latest}
user: ${UID:-1024}:${GID:-101}
restart: ${RESTART:-unless-stopped}
network_mode: host
healthcheck:
test: curl -f http://localhost:3000/ || exit 1
environment:
GF_SECURITY_ALLOW_EMBEDDING: ${GRAFANA_SECURITY_ALLOW_EMBEDDING:-true}
volumes:
- /${SYNOLOGY_VOLUME:-volume1}/docker/${STACK_NAME:-domotica}/${GRAFANA_CONTAINER_NAME:-Grafana}/var/lib/grafana:/var/lib/grafana
# ESPHome
esphome:
container_name: ${ESPHOME_CONTAINER_NAME:-ESPHome}
image: esphome/esphome:${ESPHOME_TAG:-latest}
restart: ${RESTART:-unless-stopped}
network_mode: host
healthcheck:
test: curl -f http://localhost:6052/ || exit 1
volumes:
- /${SYNOLOGY_VOLUME:-volume1}/docker/${STACK_NAME:-domotica}/${ESPHOME_CONTAINER_NAME:-ESPHome}/config:/config