Home Assistant 的Ubuntu20.04下的安装

一,概述

在近一周的对智能家居的学习中,发现很多都是依赖于第三方的云平台,但是自己不想把所有设备信息放到互联网上,所以一直在寻求是否有本地的平台能够支撑智能家居的控制,最终发现了Home Assistant。
网上介绍HA的信息很多,就不再赘述,下面的网站可以参考一下:
HA中文网:https://www.hachina.io
HA官网:https://www.home-assistant.io

二,设备及软件

  1. VMware workstation Pro 15
  2. Ubuntu 20.04

三,系统安装

1. 安装Unbuntu

请参考:“https://community.home-assistant.io/t/installing-home-assistant-supervised-on-ubuntu-18-04-4/200020” 第一节的内容。

2. 基础软件安装

  1. 变更软件安装源为清华源(其他软件源可以使用,试试本人安装的时候只有清华源的安装源顺利通过安装), 网上资料恨锁,不再赘述
  2. 变更host文件,添加如下内容(摘自:https://www.cnblogs.com/sinferwu/p/12726833.html)
                     52.74.223.119 github.com
                    192.30.253.119 gist.github.com
                    54.169.195.247 api.github.com
                    185.199.111.153 assets-cdn.github.com
                    151.101.76.133 raw.githubusercontent.com
                    151.101.108.133 user-images.githubusercontent.com
                    151.101.76.133 gist.githubusercontent.com
                    151.101.76.133 cloud.githubusercontent.com
                    151.101.76.133 camo.githubusercontent.com
                    151.101.76.133 avatars0.githubusercontent.com
                    151.101.76.133 avatars1.githubusercontent.com
                    151.101.76.133 avatars2.githubusercontent.com
                    151.101.76.133 avatars3.githubusercontent.com
                    151.101.76.133 avatars4.githubusercontent.com
                    151.101.76.133 avatars5.githubusercontent.com
                    151.101.76.133 avatars6.githubusercontent.com
                    151.101.76.133 avatars7.githubusercontent.com
                    151.101.76.133 avatars8.githubusercontent.com
  1. 安装VMwaretools
    1.虚拟机菜单栏选择安装Vmware-tools
    2.将VMwareTools-XXXXX.tar.gz 复制到桌面
    3.解压缩文件到桌面,可以看到文件vmware-tools-distrib
    4.打开终端
    5.输入如下命令
    $ sudo su
    $ cd /home/用户名/……/含有vmware-install.pl文件的文件夹
    $ ./vmware-install.pl

    出现安装界面后全部输入Yes即可

  2. 安装太阳花远程工具(为了方便公网远程)。

    1. 下载ubuntu的远程deb安装包
    2. 打开终端
    3. 进入下载的安装包的文件夹
    4. 执行命令
      sudo dpkg -i *** # ***为下载软件包的名称

    执行完命令后出现如下错误
    正在读取数据库 … 系统当前共安装有 165891 个文件和目录。)
    准备解压 SunloginClient-10.0.2.24779_amd64.deb …
    正在解压 sunloginclient (10.0.2-24779) 并覆盖 (10.0.2-24779) …
    dpkg: 依赖关系问题使得 sunloginclient 的配置工作不能继续:
    sunloginclient 依赖于 libwebkitgtk-3.0-0;然而:
    未安装软件包 libwebkitgtk-3.0-0。
    dpkg: 处理软件包 sunloginclient (–install)时出错:
    依赖关系问题 - 仍未被配置
    正在处理用于 desktop-file-utils (0.24-1ubuntu3) 的触发器 …
    正在处理用于 gnome-menus (3.36.0-1ubuntu1) 的触发器 …
    正在处理用于 mime-support (3.64ubuntu1) 的触发器 …
    在处理时有错误发生:
    sunloginclient

    解决办法:(摘自:https://www.codenong.com/cs107130654/)
    在/etc/apt/source.list 里加上deb http://cz.archive.ubuntu.com/ubuntu bionic main universe
    黄色部分可以更换成清华源的地址,速度更快。
    然后执行如下命令:
    sudo apt-get update
    sudo apt-get install -f
    重新执行:sudo dpkg -i *** # ***为下载软件包的名称

安装Home Assistant

请参考:“https://community.home-assistant.io/t/installing-home-assistant-supervised-on-ubuntu-18-04-4/200020” 第二节的内容。
安装完成后重启虚拟机,重启后打开http://ip地址:8123 即可看到注册页面。
安装完成。

注意事项:

安装过程中遇到了很多问题,最初的打算不用VENV环境或者Docker,但是全都失败了,这期间参考了很多大神的文章,但是都没有做通做。最后又转向了官网的教程,虽然也出现了很多问题,但是最终还是安装成功了。几个关键的点一定要注意

  1. 测试的镜像源中清华源对Ubuntu20.04支持的最好,也可能其他的源我没搞懂怎么弄,但是目前推荐清华源。
  2. GitHub的地址必须在host中修改,不然官网中的最后一行的脚本无法执行,更改完host文件后可以复制粘贴“https://raw.githubusercontent.com/Kanga-Who/home-assistant/master/supervised-installer.sh”此地址看一下是否可以打开脚本,如果可以打开就可以往下进行了,如果不能打开,请检查host文件或者IP地址是否有错误。
  3. 太阳花远程可以选择不安装。
  4. 安装过程中最后每一步做一次快照,以便做错了恢复重新来过。
<think>嗯,用户想要在Ubuntu上用Docker部署Home Assistant。首先,我需要确认用户对Ubuntu和Docker的基本了解程度。可能用户已经有一定的Linux基础,但还是要一步步来。 首先,系统要求部分,Ubuntu 20.04或更高,Docker引擎,这些是前提条件。需要确保用户满足这些。然后安装Docker,如果用户还没装的话,可能得提供安装步骤,比如用官方脚本安装,记得添加用户到docker组,避免每次sudo。 接下来是部署步骤。创建数据目录,这一步很重要,数据持久化。然后运行容器,这里要注意参数,比如-v挂载卷,--name容器名,--restart重启策略,时区设置,网络模式用host可能更合适智能家居设备发现。然后检查容器状态,用docker ps看是否运行正常。 访问Home Assistant是通过IP加端口8123,用户可能需要知道如何查找自己的IP,或者如果是本地访问,直接用localhost。初次配置向导,用户可能需要连接智能设备,这里可能需要提醒用户确保设备和服务器在同一网络。 持久化与更新部分,数据目录已经挂载了,所以更新只需要拉新镜像,删除旧容器,重新运行。需要注意命令是否正确,特别是挂载的路径是否一致。 最后,常见问题可能包括端口冲突,这时候需要检查是否有其他服务占用8123,或者防火墙设置。数据备份的话,备份config目录即可。设备无法发现的话,可能需要检查网络模式是否为host,或者防火墙是否允许UPnP。 需要确保所有命令准确无误,比如docker run的参数是否正确,特别是时区的变量和网络模式。还有提醒用户替换路径或配置根据自己需求调整。可能用户会遇到权限问题,比如挂载的目录没有写权限,这时候可能需要chmod或者chown处理。 总的来说,步骤需要详细但清晰,避免用户遗漏关键配置。同时,常见问题的解答可以帮助用户自主排查问题,减少后续的困惑。可能还需要提醒用户查看Home Assistant的官方文档以获取更多配置选项和插件安装方法。</think>### Ubuntu 使用 Docker 部署 Home Assistant 分步指南 #### 一、系统要求 1. Ubuntu 20.04 或更高版本 2.安装 Docker 引擎 3. 至少 2GB 内存(推荐 4GB+) 4. 10GB 可用存储空间 #### 二、安装 Docker(如未安装) ```bash # 卸载旧版本 sudo apt-get remove docker docker-engine docker.io containerd runc # 安装依赖 sudo apt-get update sudo apt-get install ca-certificates curl gnupg lsb-release # 添加 Docker 官方 GPG 密钥 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg # 设置稳定版仓库 echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null # 安装 Docker 引擎 sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io # 验证安装 sudo docker run hello-world # 将当前用户加入 docker 组(避免每次使用 sudo) sudo usermod -aG docker $USER newgrp docker # 立即生效或重启终端 ``` #### 三、部署 Home Assistant 1. **创建持久化数据目录** ```bash mkdir -p ~/homeassistant/config ``` 2. **运行容器(标准版)** ```bash docker run -d \ --name homeassistant \ --privileged \ --restart=unless-stopped \ -v /etc/localtime:/etc/localtime:ro \ -v ~/homeassistant/config:/config \ --network=host \ ghcr.io/home-assistant/home-assistant:stable ``` 参数说明: - `-v /etc/localtime`: 同步宿主机时区 - `-v ~/homeassistant/config`: 配置文件持久化存储 - `--network=host`: 使用主机网络模式(便于发现局域网设备) 3. **查看运行状态** ```bash docker ps -a | grep homeassistant ``` #### 四、首次访问 1. 浏览器访问:`http://<服务器IP>:8123` 2. 根据向导完成初始设置(约需5-10分钟) 3. 建议设置管理员账户并开启SSL加密 #### 五、持久化与更新 1. **数据备份**:直接备份 `~/homeassistant/config` 目录 2. **更新版本**: ```bash docker stop homeassistant docker rm homeassistant docker pull ghcr.io/home-assistant/home-assistant:stable # 重新运行上述 docker run 命令 ``` #### 六、常见问题解决 1. **端口冲突**: ```bash # 检查端口占用 sudo netstat -tuln | grep 8123 ``` 2. **容器日志查看**: ```bash docker logs -f homeassistant ``` 3. **设备无法发现**: - 确认使用 `--network=host` 模式 - 检查防火墙设置: ```bash sudo ufw allow 8123/tcp sudo ufw allow 51827/udp # HomeKit 所需端口 ``` #### 七、推荐插件(通过Web界面添加) 1. File Editor(内置配置文件编辑器) 2. Samba Backup(自动备份) 3. HACS(第三方插件商店) > **注意**:首次启动后需等待约5-15分钟初始化,可通过 `docker logs -f homeassistant` 查看实时日志。建议通过Nginx配置反向代理实现HTTPS访问。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值