uDocs

Запуск Home Assistant в Docker

Настраиваем и запускам docker контейнер.

Запуск Home Assistant в Docker

Есть несколько вариантов установки Home Assistant. Ранее мы рассказывали про установку на Raspberry PI. Там вскользь упомянули Docker. А в этой статье будет рассказано как в несколько строк создать расширяемый проект. И в дальнейшем в него можно добавить внешние docker контейнеры, например как Zigbee2MQTT.

При такой установке у нас пропадает supervisor. Который позволяет устанавливать некоторые дополнения, а также обновлять систему. Но это не такая большая проблем, как кажется на первый взгляд. Дополнения можно добавить дополнительным контейнером, а про обновления мы поговорим чуть ниже.

Мы подготовили полный курс, как запустить Home Assistant и все его зависимости в Docker. Каждый шаг расписан детально. От установки Debian до подключения к MQTT. Подробнее Home Assistant в Docker Container

Настройка проекта

Первым делом необходимо создать структуру проекта:

home-assistant
├── /config
├── Makefile
└── docker-compose.yml

Во время первого запуска папка с конфигом будет автоматически заполнена. После чего вы сможете отредактировать его любым удобным редактором.

Docker compose

Здесь будет располагаться основная конфигурация запуска Home Assistant. В содержимое docker-compose.yml необходимо вставить следующий код:

version: '3'
services:
  homeassistant:
    container_name: homeassistant
    image: ghcr.io/home-assistant/home-assistant:stable
    volumes:
      - ./config:/config
      - /etc/localtime:/etc/localtime:ro
    ports:
      - "8123:8123"
    restart: always

Makefile

Makefile — содержит в себе набор команд для быстрой работы с контейнерами. Но является необязательным. Но с его помощью будет гораздо удобнее работать. Грубо говоря это сокращение команд.

start:
    docker compose up -d

stop:
    docker compose stop
    
restart:
    docker compose restart

Файл содержит всего 3 команды. Название говорит само за себя. Так же вы можете добавить и свои команды.

Чтобы запустить их необходимо написать в терминале make название команды.

Запуск проекта

В зависимости от того, какой способ работы вы выбрали, вводим в терминале команду для запуска.

make start

docker compose up -d

Первый раз docker загрузит все необходимые контейнеры и в дальнейшем будет их использовать. На загрузку потребуется буквально 1 минута. После чего переходим в браузере по адресу

http://localhost:8123/

Где нас встречает интерфейс создания учетной записи и первая настройка.

Обновление Home Assistant

Так как в docker мы лишаемся возможности обновления изнутри, то надо как-то решать эту проблему. Для этого в docker-compose.yml достаточно указать необходимую версию. В текущем конфиге это 2023.4. После чего выполнить перезагрузку контейнера.

Обсуждение

СтаниславСтанислав
12 июля 2025

Плюсую. Тема обновления не раскрыта. Куда прописывать версию и где посмотреть текущую?

АлексейАлексей
13 августа 2024

Вы говорите: “В текущем конфиге это 2023.4.”

Но в конфиге нет конкретной версии. Имеется ввиду, что на момент написания статьи 2023.4 это и есть stable-версия, указанная в конфиге?

Рекомендуемые записи

Установка Home Assistant в Proxmox

Установка Home Assistant в Proxmox

Быстро и без головной боли устанавливаем Home Assistant в систему виртуализации Proxmox.
Управление голосом с помощью Алисы и Маруси

Управление голосом с помощью Алисы и Маруси

Настройка интеграции Home Assistant c голосовыми ассистентами от Яндекс и VK.
Температура и нагрузка процессора в Home Assistant

Температура и нагрузка процессора в Home Assistant

Добавляем необходимые сенсоры для мониторинга важных показателей.
Удаленный доступ Home Assistant со статическим IP

Удаленный доступ Home Assistant со статическим IP

Простой способ настроить удаленный доступ без внешних DDNS сервисов и сертификатов