version: '3' services: homeassistant: container_name: HomeAssistant network_mode: host image: "ghcr.io/home-assistant/home-assistant:latest" volumes: - /share/docker_data/ha/:/config #- /dev/skyconnect:/dev/ttyUSB1 # - /dev/ttyUSB1:/dev/ttyUSB1 #- /var/log:/logging - /var/run/docker.sock:/var/run/docker.sock - /run/dbus:/run/dbus:ro privileged: true environment: - DISABLE_JEMALLOC=value - TZ=Europe/Bratislava labels: - com.centurylinklabs.watchtower.enable=true - homepage.group=Smarthome - homepage.name=Home Assistant - homepage.weight=1 - homepage.icon=home-assistant.png - homepage.href=https://ha.sectorq.eu - homepage.description=3D Printing - homepage.server=my-docker - homepage.container=HomeAssistant - homepage.widget.type=homeassistant - homepage.widget.url=https://ha.sectorq.eu - homepage.widget.key=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiIzOTk5NGJjYjIzYjk0YzExYmM5OWZiNTBlNzU0N2M2YyIsImlhdCI6MTc0MDM5OTY4NCwiZXhwIjoyMDU1NzU5Njg0fQ.LDebvPGreyZzlWT1CylHSdSt8i_cWO72HnNCsCAIaG8 #- homepage.widget.custom=[{"state","sensor.sonoff_1001555a27_power"}] restart: always dns: - 192.168.77.101 # ollama: # volumes: # - /share/docker_data/ollama:/root/.ollama # ports: # - 11434:11434 # container_name: ollama # # image: ollama/ollama:0.1.27-rocm # image: ollama/ollama # # environment: # # - HSA_OVERRIDE_GFX_VERSION=9.0.0 # # devices: # # - /dev/dri/renderD128 # # - /dev/dri/card1 # # - /dev/kfd # labels: # com.centurylinklabs.watchtower.enable: true esphome: container_name: esphome image: esphome/esphome:latest volumes: - /share/docker_data/esphome/config:/config - /etc/localtime:/etc/localtime:ro restart: always privileged: true network_mode: host environment: - USERNAME=jaydee - PASSWORD=jaydee1 labels: - com.centurylinklabs.watchtower.enable=true - homepage.group=Smarthome - homepage.name=ESPHome - homepage.weight=1 - homepage.icon=esphome.png - homepage.href=https://esphome.sectorq.eu - homepage.description=3D Printing - homepage.server=my-docker - homepage.container=esphome - homepage.widget.type=esphome - homepage.widget.url=https://esphome.sectorq.eu - homepage.widget.username=jaydee - homepage.widget.password=jaydee1 wyoming-piper-en: image: rhasspy/wyoming-piper container_name: piper-en ports: - 10200:10200 volumes: - /share/docker_data/piper/english:/data command: --voice en_US-lessac-medium restart: always labels: com.centurylinklabs.watchtower.enable: true wyoming-whisper-en: image: rhasspy/wyoming-whisper container_name: whisper-en ports: - 10300:10300 volumes: - /share/docker_data/whisper/english:/data command: --model tiny-int8 --language en restart: always labels: com.centurylinklabs.watchtower.enable: true openwakeword: container_name: openwakeword image: rhasspy/wyoming-openwakeword:latest command: --preload-model 'ok_nabu' --custom-model-dir /custom --model 'ok nabu' --model 'ok_nabu' --uri 'tcp://0.0.0.0:10400' --threshold 0.7 --trigger-level 2 --debug volumes: - /share/docker_data/openwakeword-data:/data - /share/docker_data/openwakeword-data:/custom # Place my custom wakewords here environment: - TZ=Europe/Bratislava restart: always ports: - 10400:10400 - 10400:10400/udp labels: com.centurylinklabs.watchtower.enable: true matter-server: container_name: matter-server image: ghcr.io/home-assistant-libs/python-matter-server:stable restart: unless-stopped security_opt: - apparmor=unconfined volumes: - /share/docker_data/matter-server:/data - /run/dbus:/run/dbus:ro network_mode: host labels: com.centurylinklabs.watchtower.enable: true grafana: ports: - 3007:3000 container_name: grafana image: grafana/grafana:latest labels: - com.centurylinklabs.watchtower.enable=true - homepage.group=Smarthome - homepage.name=Grafana - homepage.weight=1 - homepage.icon=grafana.png - homepage.href=https://g.sectorq.eu - homepage.description=Graphs - homepage.server=my-docker - homepage.container=grafana # - homepage.widget.type=grafana # - homepage.widget.url=https://g.sectorq.eu # - homepage.widget.key=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9. # environment: # - GF_AUTH_DISABLE_LOGIN_FORM=true # - GF_AUTH_ANONYMOUS_ENABLED=true # - GF_AUTH_ANONYMOUS_ORG_ROLE=Admin # - GF_SECURITY_ALLOW_EMBEDDING=true restart: unless-stopped volumes: - /share/docker_data/grafana/data:/var/lib/grafana - /share/docker_data/grafana/certs:/certs user: "0:0" environment: GF_LOG_FILTERS: rendering:debug GF_RENDERING_SERVER_URL: http://renderer:8092/render GF_RENDERING_CALLBACK_URL: http://grafana:3000/ GF_AUTH_GENERIC_OAUTH_ENABLED: "true" GF_AUTH_GENERIC_OAUTH_NAME: "authentik" GF_AUTH_GENERIC_OAUTH_CLIENT_ID: "xc8AKsYOvHFmYnRjfnvt2YfgR5pg8Mlfc9YEqd3T" GF_AUTH_GENERIC_OAUTH_CLIENT_SECRET: "gb5ThPlyIUN2I8UPvIKAqQBoGFmTAb7tFxt5OiJQkAG6Ef2HDKksNOjWPJFfXiO22RuCnWuyzl6IMqPYO6QTa55EYfoN5N87enh5MOhTXjo2JTTnEL1eZhEI1Sw1vBO8" GF_AUTH_GENERIC_OAUTH_SCOPES: "openid profile email" GF_AUTH_GENERIC_OAUTH_AUTH_URL: "https://auth.sectorq.eu/application/o/authorize/" GF_AUTH_GENERIC_OAUTH_TOKEN_URL: "https://auth.sectorq.eu/application/o/token/" GF_AUTH_GENERIC_OAUTH_API_URL: "https://auth.sectorq.eu/application/o/userinfo/" GF_AUTH_SIGNOUT_REDIRECT_URL: "https://auth.sectorq.eu/application/o/grafana/end-session/" GF_SERVER_ROOT_URL: https://g.sectorq.eu/ # Optionally enable auto-login (bypasses Grafana login screen) GF_AUTH_OAUTH_AUTO_LOGIN: "true" # Optionally map user groups to Grafana roles GF_AUTH_GENERIC_OAUTH_ROLE_ATTRIBUTE_PATH: "contains(groups, 'Grafana Admins') && 'Admin' || contains(groups, 'Grafana Editors') && 'Editor' || 'Viewer'" GF_INSTALL_PLUGINS: https://storage.googleapis.com/integration-artifacts/alexanderzobnin-zabbix-app/4.5.7/main/163fabf651b776bf70adc08fa41bec4f52645374/alexanderzobnin-zabbix-app-4.5.7%2B163fabf6.linux_amd64.zip;alexanderzobnin-zabbix-app renderer: image: grafana/grafana-image-renderer:latest restart: unless-stopped ports: - 8092 labels: - com.centurylinklabs.watchtower.enable=true - homepage.group=Smarthome - homepage.name=Music Assistant - homepage.weight=1 - homepage.icon=music-assistant.png - homepage.href=http://192.168.77.101:8095 - homepage.description=Music assistant - homepage.server=my-docker - homepage.container=music-assistant-server # espresense: # image: espresense/espresense-companion # ports: # - 8267:8267 # volumes: # - ./data/espresense:/config/espresense music-assistant-server: image: ghcr.io/music-assistant/server:latest # <<< Desired release version here (or use beta to get the latest beta version) container_name: music-assistant-server restart: unless-stopped # Network mode must be set to host for MA to work correctly network_mode: host volumes: - /share/docker_data/music-assistant-server/data:/data/ # privileged caps (and security-opt) needed to mount smb folders within the container cap_add: - SYS_ADMIN - DAC_READ_SEARCH security_opt: - apparmor:unconfined environment: # Provide logging level as environment variable. # default=info, possible=(critical, error, warning, info, debug) - LOG_LEVEL=info labels: com.centurylinklabs.watchtower.enable: true influxdb: ports: - 8086:8086 volumes: - /share/docker_data/influxdb/data:/var/lib/influxdb2 - /share/docker_data/influxdb/config:/etc/influxdb2 environment: - DOCKER_INFLUXDB_INIT_MODE=setup - DOCKER_INFLUXDB_INIT_USERNAME=ha - DOCKER_INFLUXDB_INIT_PASSWORD=haHAhaHA - DOCKER_INFLUXDB_INIT_ORG=ha - DOCKER_INFLUXDB_INIT_BUCKET=ha image: influxdb:2 restart: unless-stopped healthcheck: test: "echo test > /var/lib/influxdb2/hc || exit 1" interval: 10s timeout: 3s retries: 2 labels: com.centurylinklabs.watchtower.enable: true