Initial Home Assistant Container deployment
- docker-compose.yml: homeassistant/home-assistant:stable, bridge, 127.0.0.1:8123, journald - config/ исключён из git (.gitignore) - README + CLAUDE с описанием стека, деплоя, nginx-нюансов
This commit is contained in:
52
CLAUDE.md
Normal file
52
CLAUDE.md
Normal file
@@ -0,0 +1,52 @@
|
||||
# CLAUDE.md — home-assistant
|
||||
|
||||
## Что
|
||||
Home Assistant Container на str-u-01 (45.10.53.148). UI публикуется через nginx на `ha.striker.su`.
|
||||
|
||||
## Стек
|
||||
- `homeassistant/home-assistant:stable` (Docker Hub, обычный Container — не Supervised, без addons)
|
||||
- bridge network, `127.0.0.1:8123:8123` (только loopback на сервере)
|
||||
- volume bind-mount: `./config:/config` (НЕ в git)
|
||||
- log-driver: journald (см. memory `reference_fail2ban_gitea.md` про journald на str-u-01)
|
||||
- `restart: unless-stopped`, healthcheck на `/manifest.json`
|
||||
|
||||
## Структура
|
||||
```
|
||||
home-assistant/
|
||||
├── docker-compose.yml # сервис ha
|
||||
├── .gitignore # исключает config/
|
||||
├── README.md
|
||||
└── CLAUDE.md
|
||||
```
|
||||
|
||||
На сервере: `/opt/docker/sites/home-assistant/`. Папка `config/` создаётся автоматически HA при первом запуске.
|
||||
|
||||
## Деплой
|
||||
```bash
|
||||
ssh striker@str-u-01.striker.su
|
||||
cd /opt/docker/sites/home-assistant
|
||||
git pull
|
||||
docker compose pull && docker compose up -d
|
||||
```
|
||||
|
||||
## nginx
|
||||
vhost: `/etc/nginx/conf.d/ha.striker.su` на str-u-01 (ssl + reverse-proxy на 127.0.0.1:8123).
|
||||
Обязательно `proxy_set_header Upgrade` / `Connection upgrade` для WebSocket — UI ломается без них.
|
||||
|
||||
## LE-сертификат
|
||||
DNS-01 через Technitium API (см. memory `feedback_acme_technitium_dns01.md`).
|
||||
Файлы: `/etc/letsencrypt/live/ha.striker.su/fullchain.pem` + `privkey.pem`.
|
||||
|
||||
## HA конфиг
|
||||
После первого запуска в `config/configuration.yaml` добавить:
|
||||
```yaml
|
||||
http:
|
||||
use_x_forwarded_for: true
|
||||
trusted_proxies:
|
||||
- 127.0.0.1
|
||||
```
|
||||
Иначе HA отвергнет соединения от nginx как "untrusted proxy".
|
||||
|
||||
## Доступы
|
||||
- UI: https://ha.striker.su (онбординг при первом входе — создаёт admin)
|
||||
- Локально: `curl http://127.0.0.1:8123` (только с самого сервера)
|
||||
Reference in New Issue
Block a user