New services, cleanup, readme

This commit is contained in:
2021-09-03 10:52:44 +02:00
parent 05c8d61e0a
commit a0e3ff6375
5 changed files with 225 additions and 13 deletions

View File

@@ -8,10 +8,31 @@ networks:
lan:
external: true
volumes:
hass:
driver: local
driver_opts:
o: bind
type: none
device: /data/files/hass
video:
driver: local
driver_opts:
o: bind
type: none
device: /data/video
music:
driver: local
driver_opts:
o: bind
type: none
device: /data/music
services:
hass:
container_name: hass
image: homeassistant/home-assistant
build: ./hass
image: thomasloven/home-assistant
restart: always
networks:
default:
@@ -19,20 +40,24 @@ services:
iot:
lan:
volumes:
- /data/files/hass:/config
- hass:/config
- video:/media/video
- music:/media/music
- /etc/localtime:/etc/localtime:ro
environment:
WAITDB_HOST: db
WAITDB_USER: hass
WAITDB_PASS: hass
depends_on:
- db
working_dir: /config
labels:
traefik.enable: true
traefik.docker.network: web
traefik.http.services.hass.loadbalancer.server.port: 8123
traefik.http.routers.hass.rule: HOST(`${HASS_ROOT}`)
traefik.http.routers.hass.tls.certResolver: le
environment:
TZ: Europe/Stockholm
db:
image: mariadb
image: mariadb:10.4.12
restart: always
volumes:
- ./db:/var/lib/mysql
@@ -44,9 +69,22 @@ services:
MYSQL_PASSWORD: hass
MYSQL_ROOT_PASSWORD: hass
dbadmin:
image: phpmyadmin
networks:
default:
web:
environment:
PMA_ARBITRARY: 1
labels:
traefik.enable: true
traefik.docker.network: web
traefik.http.routers.dbadmin.rule: HOST(`db.${HASS_ROOT}`)
traefik.http.routers.dbadmin.middlewares: auth@file
traefik.http.routers.dbadmin.tls.certResolver: le
mqtt:
image: eclipse-mosquitto:latest
image: eclipse-mosquitto:1.6
restart: always
networks:
default:
@@ -55,6 +93,7 @@ services:
volumes:
- ./mqtt/data:/mosquitto/data
- ./mqtt/log:/mosquitto/log
#- ./mqtt/config:/mosquitto/config
grafana:
image: grafana/grafana
@@ -70,10 +109,11 @@ services:
traefik.enable: true
traefik.docker.network: web
traefik.http.routers.grafana.rule: HOST(`grafana.${HASS_ROOT}`)
traefik.http.routers.grafana.middlewares: auth@file
traefik.http.routers.grafana.tls.certResolver: le
influx:
image: influxdb
image: influxdb:1.8
restart: always
volumes:
- ./influx:/var/lib/influxdb
@@ -87,26 +127,52 @@ services:
# Devices
deconz:
image: marthoc/deconz:amd64
image: marthoc/deconz:amd64-2.05.77
restart: always
devices:
- /dev/conbee:/dev/ttyUSB0
volumes:
- ./deconz:/root/.local/share/dresden-elektronik/deCONZ
- ./deconz-otau:/root/otau
- /etc/timezone:/etc/timezone
networks:
web:
default:
# vnc:
environment:
DECONZ_VNC_MODE: 1
DECONZ_VNC_PASSWORD: secret
DEBUG_OTAU: 1
DECONZ_WEB_PORT: 8081
ports:
- 8081:8081
labels:
traefik.enable: true
traefik.docker.network: web
traefik.http.services.deconz.loadbalancer.server.port: 80
traefik.http.routers.deconz.rule: HOST(`deconz.avagen.${PRIVATE_DOMAIN}`)
traefik.http.services.deconz.loadbalancer.server.port: 8081
traefik.http.routers.deconz.rule: HOST(`deconz.${HASS_ROOT}`)
traefik.http.routers.deconz.middlewares: auth@file
traefik.http.routers.deconz.tls.certResolver: le
healthcheck:
test: curl http://localhost:5900 || exit 1
# mysensors:
# rflink:
plejd:
image: thomasloven/plejd2mqtt
restart: always
environment:
PLEJD_SITE:
PLEJD_USERNAME:
PLEJD_PASSWORD:
MQTT_BROKER: mqtt://mqtt
volumes:
- /var/run/dbus:/var/run/dbus
mobile:
image: pajikos/sms-gammu-gateway
restart: always
devices:
- /dev/gsmmodem:/dev/mobile
healthcheck:
test: ["CMD", "wget", "-O", "-", "localhost:5000/signal"]