Bài 1: Cài đặt Hệ điều hành Home Assistant lên thẻ nhớ
Cài đặt Hệ điều hành Home Assistant lên thẻ nhớ
Làm theo hướng dẫn này nếu bạn muốn bắt đầu dễ dàng với Home Assistant hoặc nếu bạn có ít hoặc không có kinh nghiệm về Linux.
PHẦN CỨNG ĐƯỢC ĐỀ XUẤT
Chúng tôi sẽ cần một số thứ để bắt đầu cài đặt HomeAssistant:
- Nguồn cung cấp (ít nhất 3A)
- Thẻ Micro SD . Lý tưởng nhất là chọn một loại là Micro SD Class 10 tốc độ cao được tối ưu hóa cho các ứng dụng lưu trữ. Nên sử dụng thẻ 32 GB trở lên.
- Đầu đọc thẻ SD. Đây đã là một phần của hầu hết các máy tính xách tay, nhưng bạn có thể mua một đầu đọc thẻ qua USB nếu bạn không có. Thương hiệu không quan trọng, chỉ cần chọn loại rẻ nhất.
- Cáp Ethernet HomeAssistant có thể hoạt động với Wi-Fi, nhưng kết nối Ethernet sẽ đáng tin cậy hơn.
GHI HÌNH ẢNH VÀO PHƯƠNG TIỆN CÀI ĐẶT CỦA BẠN
Đính kèm phương tiện cài đặt (thẻ SD) vào máy tính của bạn
Tải xuống và khởi động Balena Etcher
Chọn “Flash từ URL”
- Dán URL cho Raspberry Pi của bạn vào Balena Etcher và nhấp vào “OK”
- Balena Etcher bây giờ sẽ tải xuống hình ảnh, khi việc đó hoàn tất, hãy nhấp vào “Select target”
- Chọn thẻ SD bạn muốn sử dụng cho Raspberry Pi của mình
- Nhấp vào “Flash!” để bắt đầu viết hình ảnh
- Khi Balena Etcher viết xong hình ảnh, bạn sẽ nhận được xác nhận này
KHỞI ĐỘNG RASPBERRY PI CỦA BẠN
- Lắp thẻ nhớ Micro SD vào khe chứa thẻ nhớ của Raspberry Pi.
- Gắn cáp Ethernet cho Raspberry Pi.
- Bật nguồn để khởi chạy Raspberry Pi.
- Trong vòng vài phút, bạn sẽ có thể liên hệ với Homeassistant trên homeassistant.local: 8123 . Nếu bạn đang chạy phiên bản Windows cũ hơn hoặc có cấu hình mạng chặt chẽ hơn, bạn có thể cần truy cập Home Assistant tại
<a href="http://x.x.x.x:8123/">http://X.X.X.X:8123</a> 
(thay thế XXXX bằng địa chỉ IP Raspberry Pi của bạn có thể được xem trong cấu hình DHCP của router bạn cắm Raspberry vào). - Chờ 10p để hoàn thành quá trình cập nhật cho Home Assistant.
Cài đặt Vùng chứa Homeassistant.
Các hướng dẫn dưới đây dành cho việc cài đặt Bộ chứa hỗ trợ gia đình chạy trong môi trường vùng chứa của riêng bạn mà bạn tự quản lý. Bất kỳ thời gian chạy tương thích OCI nào cũng có thể được sử dụng, tuy nhiên, hướng dẫn này sẽ tập trung vào việc cài đặt nó với Docker.
Điều kiện tiên quyết
Hướng dẫn này giả định rằng bạn đã cài đặt hệ điều hành và cài đặt thời gian chạy vùng chứa (như Docker).
CÀI ĐẶT NỀN TẢNG
Cài đặt với Docker rất đơn giản. Điều chỉnh lệnh sau để /PATH_TO_YOUR_CONFIG 
trỏ đến thư mục mà bạn muốn lưu cấu hình của mình và chạy nó.
Raspberry Pi 3
Tải về
docker run --init -d \
--name homeassistant \
--restart=unless-stopped \
-v /etc/localtime:/etc/localtime:ro \
-v /PATH_TO_YOUR_CONFIG:/config \
--network=host \
homeassistant/raspberrypi3-homeassistant:stable
<strong>Cập nhật</strong>
# if this returns "Image is up to date" then you can stop here
docker pull homeassistant/raspberrypi3-homeassistant:stable
# stop the running container
docker stop homeassistant
# remove it from Docker's list of containers
docker rm homeassistant
# finally, start a new one
docker run --init -d \
--name homeassistant \
--restart=unless-stopped \
-v /PATH_TO_YOUR_CONFIG:/config \
-v /etc/localtime:/etc/localtime:ro \
--network=host \
homeassistant/raspberrypi3-homeassistant:stable
Raspberry Pi 4
Tải về
docker run --init -d \
--name homeassistant \
--restart=unless-stopped \
-v /etc/localtime:/etc/localtime:ro \
-v /PATH_TO_YOUR_CONFIG:/config \
--network=host \
homeassistant/raspberrypi4-homeassistant:stable
<strong>Cập nhật
</strong># if this returns "Image is up to date" then you can stop here
docker pull homeassistant/raspberrypi4-homeassistant:stable
# stop the running container
docker stop homeassistant
# remove it from Docker's list of containers
docker rm homeassistant
# finally, start a new one
docker run --init -d \
--name homeassistant \
--restart=unless-stopped \
-v /PATH_TO_YOUR_CONFIG:/config \
-v /etc/localtime:/etc/localtime:ro \
--network=host \
homeassistant/raspberrypi4-homeassistant:stable
Sau khi Vùng chứa Home Assistant đang chạy Home Assistant sẽ có thể truy cập được bằng <a href="http://%3Chost%3E:8123/">http://:8123</a> 
(thay với tên máy chủ hoặc IP của hệ thống). Bạn có thể tiếp tục với việc giới thiệu.
KHỞI ĐỘNG LẠI TRỢ LÝ TRANG CHỦ
Nếu bạn thay đổi cấu hình, bạn phải khởi động lại máy chủ. Để làm điều đó, bạn có 3 lựa chọn.
- Trong giao diện người dùng Trợ lý tại nhà, hãy chuyển đến bảng Cấu hình -> Quản lý máy chủ và nhấp vào nút “Khởi động lại”.
- Bạn có thể đi tới Công cụ dành cho nhà phát triển -> Dịch vụ , chọn dịch vụ
homeassistant.restart 
và nhấp vào “Dịch vụ cuộc gọi”. - Khởi động lại nó từ một thiết bị đầu cuối.
Docker CLI
docker restart homeassistant
Docker Soạn
docker-compose restart
DOCKER SOẠN
Khi lệnh Docker trở nên phức tạp hơn, việc chuyển sang docker-compose 
có thể được ưu tiên hơn và hỗ trợ tự động khởi động lại khi bị lỗi hoặc khởi động lại hệ thống. Tạo một docker-compose.yml
tệp:
Raspberry pi 3
version: '3'
services:
homeassistant:
container_name: homeassistant
image: homeassistant/raspberrypi3-homeassistant:stable
volumes:
- /PATH_TO_YOUR_CONFIG:/config
- /etc/localtime:/etc/localtime:ro
restart: unless-stopped
network_mode: host
Raspberry pi 4
version: '3'
services:
homeassistant:
container_name: homeassistant
image: homeassistant/raspberrypi4-homeassistant:stable
volumes:
- /PATH_TO_YOUR_CONFIG:/config
- /etc/localtime:/etc/localtime:ro
restart: unless-stopped
network_mode: host
Bắt đầu nó bằng cách chạy:
docker-compose up -d
PHƠI BÀY THIẾT BỊ
Để sử dụng Z-Wave, Zigbee hoặc các tích hợp khác yêu cầu quyền truy cập vào thiết bị, bạn cần ánh xạ thiết bị thích hợp vào vùng chứa. Đảm bảo người dùng đang chạy vùng chứa có các đặc quyền chính xác để truy cập /dev/tty*
tệp, sau đó thêm ánh xạ thiết bị vào hướng dẫn vùng chứa của bạn:
Docker CLI
docker run ... --device /dev/ttyUSB0:/dev/ttyUSB0 ...
<strong>Docker Soạn</strong>
version: '3'
services:
homeassistant:
...
devices:
- /dev/ttyUSB0:/dev/ttyUSB0
TỐI ƯU HÓA
Bộ chứa Home Assistant đang sử dụng thư viện cấp phát bộ nhớ thay thế jemalloc để quản lý bộ nhớ tốt hơn và tăng tốc thời gian chạy Python.
Vì jemalloc có thể gây ra sự cố trên một số phần cứng nhất định, nó có thể bị vô hiệu hóa bằng cách chuyển biến môi trường DISABLE_JEMALLOC
với bất kỳ giá trị nào, ví dụ:
Docker CLI
docker run ... -e "DISABLE_JEMALLOC=true" ...
<strong>Docker Soạn</strong>
version: '3'
services:
homeassistant:
...
environment:
DISABLE_JEMALLOC: true