From 68c7edafd2ef7412f4f151435164467b4193fb9a Mon Sep 17 00:00:00 2001 From: Dobromir Popov Date: Thu, 15 Aug 2024 15:59:40 +0300 Subject: [PATCH] add containers in scripts project: add HA --- .../homeassistant/configuration.yaml | 62 ++++++++++ .../homeassistant/home.yml | 115 ++++++++++++++++++ .../homeassistant - setup HACS.md | 14 +++ 3 files changed, 191 insertions(+) create mode 100644 portainer-compose-stacks/homeassistant/configuration.yaml create mode 100644 portainer-compose-stacks/homeassistant/home.yml create mode 100644 portainer-compose-stacks/homeassistant/homeassistant - setup HACS.md diff --git a/portainer-compose-stacks/homeassistant/configuration.yaml b/portainer-compose-stacks/homeassistant/configuration.yaml new file mode 100644 index 0000000..26d6907 --- /dev/null +++ b/portainer-compose-stacks/homeassistant/configuration.yaml @@ -0,0 +1,62 @@ +# NOT USED. Check /hassio folder +panel_iframe: + portainer: + title: "Portaiiner" + url: "https://docker.d-popov.com//#!/1/docker/containers" + icon: mdi:docker + require_admin: true + +# Loads default set of integrations. Do not remove. +default_config: + +# Load frontend themes from the themes folder +frontend: + themes: !include_dir_merge_named themes + +# Text to speech +tts: + - platform: google_translate + +http: + use_x_forwarded_for: true + trusted_proxies: + - 192.168.0.10 # Add the IP address of the proxy server + +#almond: +# type: local +# host: http://192.168.0.10:3001 + + +automation: !include automations.yaml +script: !include scripts.yaml +scene: !include scenes.yaml + + +homeassistant: + external_url: "https://home.d-popov.com" + packages: !include_dir_named integrations/ + +sensor: + - platform: command_line + name: CPU Temp + command: "cat /sys/class/thermal/thermal_zone0/temp" + unit_of_measurement: "C" + value_template: "{{ value | multiply(0.001) | round(1) }}" + + - platform: command_line + name: GPU Temp + command: "/opt/vc/bin/vcgencmd measure_temp" + unit_of_measurement: "C" + value_template: '{{ value | regex_findall_index("=([0-9]*\.[0-9]*)", 0) }}' + + - platform: command_line + name: CPU Clock + command: "/opt/vc/bin/vcgencmd measure_clock arm" + unit_of_measurement: "MHz" + value_template: '{{ value | regex_findall_index("=([0-9]*)", 0) | multiply(0.000001) | round(0) }}' + +mqtt: + sensor: + state_topic: 'Esp/bedroom/temperature' + name: 'Bedroom Temperature' + unit_of_measurement: 'C' \ No newline at end of file diff --git a/portainer-compose-stacks/homeassistant/home.yml b/portainer-compose-stacks/homeassistant/home.yml new file mode 100644 index 0000000..1d0fe4e --- /dev/null +++ b/portainer-compose-stacks/homeassistant/home.yml @@ -0,0 +1,115 @@ +version: '3.8' +services: + homeassistant: + container_name: homeassistant + image: homeassistant/home-assistant:stable + volumes: + - /mnt/apps/docker_volumes/homeassistant/config:/config + - /etc/localtime:/etc/localtime:ro + - /run/dbus:/run/dbus + - /dev/bus/usb:/dev/bus/usb + - /dev/hci0:/dev/hci0 + privileged: true # Required for full access to host devices + # cap_add: + # - NET_ADMIN + # - SYS_ADMIN + # - SYS_RAWIO + # restart: unless-stopped + network_mode: host + #devices: + # - /dev/ttyACM0:/dev/ttyACM0 + # - /dev/hci0:/dev/hci0 + dind: + deploy: + replicas: 0 + image: docker:dind + container_name: docker_in_docker + privileged: true + environment: + - DOCKER_TLS_CERTDIR=/certs + volumes: + - docker_in_docker_vol:/var/lib/docker + #- /mnt/apps/docker_volumes/dind:/var/lib/docker + - /mnt/apps/docker_volumes/haos:/mnt/haos + - /mnt/apps/DEV/docker-compose/home-infrastructure:/mnt/setup + - /mnt/apps/docker_volumes/dind/certs:/certs + - /mnt/apps/docker_volumes/dind/etc-docker:/etc/docker + #- /sys/fs/cgroup:/sys/fs/cgroup:ro + ports: + - "2376:2376" + - "8122:8123" # hassio HTTP + restart: unless-stopped + tty: true + stdin_open: true + homeassistant_old: + deploy: + replicas: 0 + container_name: homeassistant + image: homeassistant/home-assistant:latest + volumes: + - /mnt/apps/docker_volumes/homeassistant/:/config + environment: + - TZ=YOUR_TIMEZONE + restart: unless-stopped + #network_mode: host + ports: + - "8123:8123" + esphome: + container_name: esphome + image: esphome/esphome:latest + volumes: + - /mnt/apps/docker_volumes/esphome/config:/config # Maps the configuration directory to a local folder + ports: + - "6052:6052" # Optional: for API communication + - "6123:6123" # Optional: for OTA updates + restart: unless-stopped + network_mode: host # Recommended for discovery to work properly + wyoming-piper: + image: rhasspy/wyoming-piper + command: --voice en_US-lessac-medium + volumes: + - /mnt/apps/docker_volumes/ha/piper:/data + ports: + - "10200:10200" + stdin_open: true + tty: true + wyoming-whisper: + image: rhasspy/wyoming-whisper # tiny-int8 base 1GB, small 2GB RAM {tiny,tiny-int8,base,base-int8,small,small-int8,medium,medium-int8} + command: --model small --language en + volumes: + - /path/to/local/data:/data + ports: + - "10300:10300" + stdin_open: true + tty: true + wyoming-whisper-bg: + image: rhasspy/wyoming-whisper # tiny-int8 + command: --model small --language bg + volumes: + - /path/to/local/data:/data + ports: + - "10301:10300" + stdin_open: true + tty: true + openwakeword: + image: dalehumby/openwakeword-rhasspy + restart: always + ports: + - "12202:12202/udp" + volumes: + - /mnt/apps/docker_volumes/ha/openwakeword-rhasspy/config:/config + # openwakeword: + # container_name: openwakeword + # image: homeassistant/amd64-addon-openwakeword + # restart: unless-stopped + # volumes: + # - /mnt/apps/docker_volumes/ha/openwakeword/models:/data/models + # network_mode: host + # environment: + # - TZ=Your/Timezone + # - MODELS_DIR=/data/models + # - CUSTOM_MODEL_DIR=/data/models + # - THRESHOLD=0.5 # Example threshold value + # - TRIGGER_LEVEL=3 # Example trigger level +volumes: + docker_in_docker_vol: diff --git a/portainer-compose-stacks/homeassistant/homeassistant - setup HACS.md b/portainer-compose-stacks/homeassistant/homeassistant - setup HACS.md new file mode 100644 index 0000000..0211005 --- /dev/null +++ b/portainer-compose-stacks/homeassistant/homeassistant - setup HACS.md @@ -0,0 +1,14 @@ +use 'homeassistant/home-assistant:stable' container + +# https://community.home-assistant.io/t/addons-for-docker-installation/436190/42 +enter container shell: +docker exec -it homeassistant bash +wget -O - https://get.hacs.xyz | bash - + + + + + + +custom agent AI +https://community.home-assistant.io/t/custom-integration-ollama-conversation-local-ai-agent/636103/7 \ No newline at end of file