homeassistant_docker
Setup Home Assistant server. Open source home automation that puts local control and privacy first.
- Default Variables
- homeassistant_cap_add
- homeassistant_cap_drop
- homeassistant_cmdline_content
- homeassistant_cmdline_override_enabled
- homeassistant_container_name
- homeassistant_cpu_shares
- homeassistant_data_dir
- homeassistant_devices
- homeassistant_exclude_modemmanager
- homeassistant_exposed_ports
- homeassistant_extra_hosts
- homeassistant_image
- homeassistant_memory_limit
- homeassistant_memory_reservation
- homeassistant_networks
- homeassistant_networks_applied
- homeassistant_pids_limit
- homeassistant_plugin_dir
- homeassistant_plugins
- homeassistant_restart_policy
- homeassistant_security_opt
- homeassistant_serial_device
- homeassistant_service_directory
- homeassistant_service_stopped
- homeassistant_timezone
- homeassistant_version
- homeassistant_volumes
- Dependencies
homeassistant_cap_add: []
homeassistant_cap_drop: []
homeassistant_cmdline_content: console=tty1 root=/dev/mmcblk0p3 rootfstype=ext4 elevator=deadline
rootwait
Override /boot/cmdline.txt
with given conten. This can be necessary if you use searial hardware, but be careful! Wrong configuration may leave your system unusable!
homeassistant_cmdline_override_enabled: false
homeassistant_container_name: homeassistant
homeassistant_cpu_shares: _unset_
homeassistant_cpu_shares: '1024'
homeassistant_data_dir: /opt/homeassistant/config
Define required devices e.g. /dev/ttyACM0
.
homeassistant_devices:
- src: "{{ homeassistant_serial_port }}"
dest: "{{ homeassistant_serial_port }}"
opt: z
Prevent ModemManger from binding to serial devices and therefor blocking controllers like a CC2531
. Devices can be skipped by a udev rule.
homeassistant_exclude_modemmanager: false
homeassistant_exposed_ports: []
homeassistant_extra_hosts: []
homeassistant_image: homeassistant/home-assistant:{{ homeassistant_version }}
homeassistant_memory_limit: _unset_
homeassistant_memory_limit: 512m
homeassistant_memory_reservation: _unset_
homeassistant_memory_reservation: 256m
homeassistant_networks:
- name: default
homeassistant_networks:
- name: default
# optional network driver, defaults to 'bride'
driver: host
external: false
homeassistant_networks_applied:
- default
homeassistant_pids_limit: _unset_
homeassistant_plugin_dir: /opt/homeassistant/config/www/plugins
Plugins will be downloaded to homeassistant_plugin_dir
and need to be a single raw file.
homeassistant_plugins: []
homeassistant_plugins:
- name: button-card.js
url: https://github.com/custom-cards/button-card/releases/download/v3.4.2/button-card.js
- name: card-tools.js
url: https://raw.githubusercontent.com/thomasloven/lovelace-card-tools/11/card-tools.js
homeassistant_restart_policy: always
homeassistant_security_opt: []
homeassistant_serial_device:
- vendor_id: '0000'
product_id: xxxx
homeassistant_service_directory: /var/lib/docker/services/homeassistant
homeassistant_service_stopped: false
homeassistant_timezone: Europe/Berlin
homeassistant_version: latest
Define required docker volumes.
homeassistant_volumes:
- name: '{{ homeassistant_data_dir }}'
dest: /config
bind: true
homeassistant_volumes:
# Instead of the name you could specify a path on the container host system,
# but you also have to enable bind mount for this volume
- name: data
# target location inside the container
dest: /var/www/app/data
# enable bind mount, if false volume will be configured as named volume
# keep in mind you MUST set bind in any case
bind: True
# Options for bind mounts
bind_opt: "ro,z"
None.