homeassistant 在虚拟机中通过supervised方式安装

homeassistant可以有很多种安装方式

  • 直接安装HAOS,可以在树莓派等物理设备上安装,也可以在虚拟机上安装。
  • 使用docker安装
  • 在物理机或虚拟机上安装debian系统,再在上面通过supervised方式安装。
    各种安装方式的区别:
  • docker方式安装最方便,也最轻量,但是不支持supervisor(有两个主要功能1.可以直接监控和控制宿主机;2.附带一个插件商店)
  • 第一种和第三种方案支持supervisor。
  • 直接安装haos操作简便,直接去官网下载对应硬件或虚拟机的镜像安装即可。但是最新版本安装完成后,登录后台shell是homeassistant 的command line(ha cli)。没有找到返回系统shell的方法,一直开不了ssh,所以放弃了,有知道怎么处理的小伙伴可以留言告知。
  • 通过supervised方式安装,需要先下载安装debian(我用的最新的debian11),然后根据官网的说明运行相应的命令即可。这种方式有操作系统的所有权限,配置ssh访问啥的更灵活。

我的硬件环境是一个7200U的工控机,宿主机安装了unraid,在上面安装了爱快和openwrt做软路由。一台群晖。有以下几种安装方式可选,并且也分别作了尝试:

  1. List item
  2. 在unraid下通过docker安装。
  3. 在群晖下通过docker安装。
  4. 在unraid下建立虚拟机,安装haos
  5. 在unraid下建立虚拟机,安装debian,再通过supervised方式安装。
    当然,应该也可以在群晖的虚拟机下安装,但是群晖的虚拟机是性能堪忧,没有尝试。实在没有别的解决方案的可以尝试一下。

最终选择了unraid+debian+supervised方式安装。

  1. 下载最新debian镜像debian-11.1.0-amd64-netinst.iso,放到unraid的/mnt/user/isos目录下。
  2. 新建linux虚拟机,内存2G,挂载iso镜像。
  3. 开机完成debian安装,可以选择shell方式,节省硬件开销。
  4. 按照homeassistant官网步骤,安装supervised。具体参照https://www.home-assistant.io/installation/linux

安装完成后,浏览器打开http://ha服务器的ip:8123访问。可以直接进入但是需要等待一段时间进行安装,具体步骤参照网上相关教程。

安装hacs

参照网上相关文章。
需要注意的是,采用supervised方式安装时,configuration.yaml所在的目录为:/usr/share/hassio/homeassistant。

通过https方式访问

基本思路:通过nginx代理的方式将http代理为https。

  • hassio默认不允许被代理,代理后会报400错误。需要修改configuration.yaml文件,添加如下代码
http:use_x_forwarded_for: truetrusted_proxies:- nginx服务所在系统的ip地址ip_ban_enabled: truelogin_attempts_threshold: 5

然后再在nginx下配置https代理,具体方式不再赘述。
我用的是群晖的反向代理服务一直无法登录,获取token的接口一直报400错误。
但是使用hass自带的NGINX Home Assistant SSL proxy插件代理,代理成功。

具体操作:

  1. 按照上面的配置在configuration.yaml中开启use_x_forwarded_for: true等。
  2. 在supervisor的addon中添加NGINX Home Assistant SSL proxy,具体配置如下:
certfile: fullchain.pem
cloudflare: false
customize:active: falsedefault: nginx_proxy_default*.confservers: nginx_proxy/*.conf
domain: 你的域名
hsts: max-age=31536000; includeSubDomains
keyfile: privkey.pem
  1. 准备证书。把证书放到/usr/share/hassio/homeassistant/ssh目录下
    我是通过群晖的定时任务从lets encrypt获取证书的,证书在群晖中通过反向代理代理所有的内网服务为https。但是反向代理homeassistant总是不成功。但是为了保证证书的通用,需要把群晖的证书拷贝到homeassistant的宿主机上(我是通过supervised方式安装的)。
    可以使用nfs挂载的方式将证书映射到目标服务器。
#安装cifs-utilsapt-get install cifs-utilsmount -t cifs -o username=群晖用户名,password=群晖密码,iocharset=utf8 //群晖IP/证书所在路径 /usr/share/hassio/homeassistant/ssh

其他问题

supervisor中找不到Node-RED:

在supervisor的仓库中添加如下项:https://github.com/hassio-addons/repository

自定义侧边栏

新版本的supervisor不在侧边栏上了,而是放到了“配置”菜单下。可以借用panel-redirect.js把很多常用的图标配置到侧边栏。
首先从https://gist.github.com/balloob/580deaf8c3fc76948559c5963ed4d436下载panel-redirect.js
将这个js文件放到/usr/share/hassio/homeassistant/www目录下
在configuration.yaml中配置想要的侧边栏,举例如下

panel_custom:- name: panel-redirecturl_path: redirect-server-controlssidebar_title: 服务控制sidebar_icon: mdi:servermodule_url: /local/panel-redirect.jsconfig:target: /config/server_control- name: panel-redirecturl_path: redirect-logssidebar_title: 日志sidebar_icon: mdi:math-logmodule_url: /local/panel-redirect.jsconfig:target: /config/logs- name: panel-redirecturl_path: redirect-devicessidebar_title: 设备列表sidebar_icon: mdi:devicesmodule_url: /local/panel-redirect.jsconfig:target: /config/integrations- name: panel-redirecturl_path: redirect-supervisorsidebar_title: Supervisorsidebar_icon: mdi:home-assistantmodule_url: /local/panel-redirect.jsconfig:target: /hassio/dashboard- name: panel-redirecturl_path: redirect-NodeREDsidebar_title: Node-REDsidebar_icon: mdi:cube-sendmodule_url: /local/panel-redirect.jsconfig:target: /hassio/ingress/a0d7b954_nodered

挂载带密码的NFS

http://blog.joylau.cn/2020/09/29/Linux-Mount-Auth-NetDisk/

homeassistant 在虚拟机中通过supervised方式安装相关推荐

  1. centos7切换root为mysql,CentOS 7中使用rpm方式安装MySQL 5.7后无法使用root登录解决

    最近在CentOS 7中通过rpm方式安装了最新版本的mysql-server 5.7 (mysql57-community-release-el7-7.noarch.rpm) ,发现安装成功后无法使 ...

  2. 虚拟机中LINUX系统的安装

    第一步:在虚拟机新建一个虚拟机,下一步选择操作系统为Linux的Red Hat Enterprise Linux 5 64位版本 设置磁盘的大小 在虚拟机中, 打印机和声卡不是必须的,因此可以选择将其 ...

  3. 在虚拟机中,Elastix2.5 安装配置指南

    注:操作这份文档前,首先要知道Elastix是用于设置IP电话 一. Elastix安装 安装前的准备: (一) 配置要求 服务器内存大于2G,硬盘空间大于30G 8G以上U盘或者可刻录光盘和光驱. ...

  4. 在VM虚拟机中的CentOS8下安装Django

    状态:我好饿啊 原因:学习Django安装 系统:VMware虚拟机中的CentOS8 第一步:在VMware中安装CentOS8 VMware和CentOS8去官网下 莫名其妙出现这玩意说识别出的是 ...

  5. 虚方法调用在Java虚拟机中的实现方式?

    写在前面 本文隶属于专栏<100个问题搞定Java虚拟机>,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢! 本专栏目录结构和文献引用请见100个问题搞定Java ...

  6. Vmware虚拟机中CentOS7与Docker安装图文教程

    1.安装VMware 下载一个软件安装: 2.新建一个虚拟机 等待自动安装完成 配置系统语言: 配置系统时间: 配置系统键盘: 语言支持: 默认自动使用安装源: 配置软件环境,需要及时添加的软件,这里 ...

  7. linux 全新编译安装,全新linux中通过编译方式安装nginx

    先去官网下载linux.tar.gz包 http://nginx.org/en/download.html 传到linxu中 解压tar包 在软件包nginx-1.15.9目录下对NGINX进行配置 ...

  8. 解决虚拟机中Win7系统无法安装vmware tools问题

    目录 前言 一.将操作系统更新到SP1 二.自动更新问题 三.解决方案 1.安装补丁KB3020369后安装KB976932 2.安装补丁KB947821 3.安装vmware tools 前言 网上 ...

  9. Ubuntu 13.04中源码方式安装MySQL 5.5.33

    转载:http://lssrc.com/archives/385 环境:Ubuntu 13.04 数据库:MySQL 5.5.33 1.下载MySQL 5.5.33源码,地址http://dev.my ...

最新文章

  1. 高效开发:IntelliJ IDEA天天用,这些Debug技巧你都知道?
  2. python生成器单线程_【Python】迭代器、生成器、yield单线程异步并发实现详解
  3. 总结ThinkPHP使用技巧经验分享(四)
  4. js数组循环删除元素或对象
  5. Vim 基本配置和经常使用的命令
  6. 数据库oracle文件怎么打开,Oracle某个数据文件损坏,如何打开数据库-数据库专栏,ORACLE...
  7. 初识python教案青岛版八年级_青岛版信息技术六上第二单元第8课8.初识python教案...
  8. 数据库系统原理(第三章数据库设计 )
  9. 服务器突然关机的操作系统日志,一台R410 服务器不定时宕机,系统日志只有“上一次系统是意外关闭”...
  10. IP地址规划设计技术
  11. Emmagee--APP性能测试工具的基本使用
  12. R如何导入带有分隔符号的文件
  13. Linux下确认CPU是否开启超线程
  14. Linux安装flux护眼软件
  15. 微信原版提示音_抖音阿豆微信提示音修改app-抖音很火的微信提示音阿豆铃声软件v1.0...
  16. 2星|《这样读书就够了》:拆书帮的读书方法和组织结构的介绍
  17. MATLAB基础教程(7)——求解定积分和不定积分
  18. 高德地图js API实现多点标记marker,多点marker移除和鼠标滑入标点显示提示框
  19. oracle数据库 备份与恢复笔记 rman
  20. 计算机条件函数ppt,EXCEL常用函数教程PPT讲课课件_计算机硬件及应用_IT/计算机_资料(2)...

热门文章

  1. css 字体颜色阶梯过渡,CSS3——过渡(transition)
  2. wordpress phpass java版本
  3. 关于Winscp 密码获取解密
  4. java编写打印沙漏_打印沙漏编程总结
  5. 【机器学习】-----PCA(主成分分析)
  6. 微信发布重磅消息:视频号将推出创作分成计划和付费订阅,搜一搜升级“问一问”…
  7. 本地计算机上的windows installer,解决Windows installer被禁用的问题
  8. FFT与DFT的关系及应用
  9. 计算机如何更改用户名的背景,Win10系统下如何更改登录屏幕背景?
  10. 五种最怪异的木马病毒:滑稽、吓人又有些奇怪