谢大蟀智能家居

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 37|回复: 0

香橙派ubuntu系统使用 Docker 容器安装homeassistant

[复制链接]

46

主题

52

帖子

199

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
199
发表于 2025-4-20 12:20:28 | 显示全部楼层 |阅读模式
使用 Docker 容器安装
1. 安装 Docker
更新系统:同样,先更新系统软件包。
  1. sudo apt update
  2. sudo apt upgrade -y
复制代码

安装 Docker:按照官方文档的指导安装 Docker 和 Docker Compose。
  1. sudo apt install docker.io docker-compose -y
复制代码

镜像源网址更改
  1. sudo mkdir -p /etc/docker
  2. sudo tee /etc/docker/daemon.json <<EOF
  3. {
  4.    "registry-mirrors": [
  5. "https://docker.nju.edu.cn",
  6.         "https://hub.littlediary.cn",
  7.         "https://hub.xdark.top",
  8.         "https://dockerpull.org",
  9.         "https://hub.crdz.gq",
  10.         "https://docker.1panel.live",
  11.         "https://docker.unsee.tech"
  12.     ]
  13. }
  14. EOF
复制代码

启动并设置开机自启:
  1. sudo systemctl daemon-reload
  2. sudo systemctl restart docker
  3. systemctl enable docker
复制代码

2. 拉取并运行 Home Assistant 镜像
拉取镜像:从 Docker Hub 拉取 Home Assistant 的官方镜像。
  1. sudo docker pull homeassistant/home-assistant
复制代码

Home Assistant 的配置和数据需要持久化存储,避免容器重启后丢失:
  1. # 在用户目录下创建配置文件夹(推荐)mkdir -p ~/homeassistant/config
  2. # 确保目录权限正确(防止容器权限问题)sudo chmod -R 777 ~/homeassistant/config
复制代码



运行 Home Assistant 容器
执行以下命令启动容器:
  1. sudo docker run -d \
  2.   --name homeassistant \
  3.   --privileged \
  4.   --restart=unless-stopped \
  5.   -v ~/homeassistant/config:/config \
  6.   -v /etc/localtime:/etc/localtime:ro \
  7.   --network=host \
  8.   homeassistant/home-assistant:latest
复制代码

参数解释:
-d:后台运行容器。
--name homeassistant:容器命名为 homeassistant。
--privileged:授予容器完全硬件访问权限(某些设备如 Zigbee 适配器需要)。
--restart=unless-stopped:容器自动重启(除非手动停止)。
-v ~/homeassistant/config:/config:将本地目录映射到容器的配置存储位置。
-v /etc/localtime:/etc/localtime:ro:同步宿主机时间到容器。
--network=host:使用宿主机的网络模式(简化设备发现)。

3. 访问 Home Assistant 控制面板
打开浏览器,输入你的设备 IP + 端口 8123:

  1. http://<你的设备IP>:8123
复制代码


首次启动需等待 1-5 分钟初始化,之后按提示创建账户并配置。



4. 配置与维护
配置文件管理:在指定的配置路径下编辑configuration.yaml文件来配置 Home Assistant。
容器管理:使用docker命令来管理容器,如查看容器状态、停止和启动容器等。
  1. sudo docker ps  # 查看容器状态
  2. sudo docker stop homeassistant  # 停止容器
  3. sudo docker start homeassistant  # 启动容器
复制代码


更新镜像:拉取最新的 Home Assistant 镜像,并重新创建容器以更新到最新版本。
  1. # 停止并删除旧容器
  2. sudo docker stop homeassistant
  3. sudo docker rm homeassistant

  4. # 拉取最新镜像
  5. sudo docker pull homeassistant/home-assistant:latest

  6. # 重新运行容器(使用原有配置目录)
  7. sudo docker run -d \
  8.   --name homeassistant \
  9.   --privileged \
  10.   --restart=unless-stopped \
  11.   -v ~/homeassistant/config:/config \
  12.   -v /etc/localtime:/etc/localtime:ro \
  13.   --network=host \
  14.   homeassistant/home-assistant:latest
复制代码

用 iptables 开放端口:
  1. # 允许 8123 端口sudo iptables -A INPUT -p tcp --dport 8123 -j ACCEPT
  2. # 保存规则(否则重启后失效)sudo apt install iptables-persistent -y sudo netfilter-persistent save
复制代码


验证端口是否开放
  1. # 查看 8123 端口监听状态ss -tunlp | grep 8123
  2. # 或使用 nmap 扫描(需安装 nmap)sudo apt install nmap -y nmap -p 8123 localhost
复制代码






回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|谢大蟀智能家居 ( 闽ICP备18020392号-1 )

GMT+8, 2025-6-7 07:02 , Processed in 0.058660 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表