『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 4147|回复: 7

[求助] 安装在docker内的Home Assistant获取宿主机温度

[复制链接]

3

主题

99

帖子

1237

积分

金牌会员

Rank: 6Rank: 6

积分
1237
金钱
1138
HASS币
0
发表于 2019-7-27 23:18:11 | 显示全部楼层 |阅读模式
我是黑群辉通过docker安装的Home Assistant,我想增加一个传感器显示黑群辉的cpu温度,我宿主机安装了lm-sensors,但是在docker容器内无法访问这个程序,然后我想到的方法是在宿主机内写一个python的flask程序,Home Assistant通过访问网页接口获取温度,但是奇怪的是在终端里程序可以运行,通过群辉的计划任务无法运行,这个方案最终放弃。
所以,还没有更加优雅的方法解决这个问题???
回复

使用道具 举报

23

主题

1336

帖子

6617

积分

超级版主

Rank: 8Rank: 8

积分
6617
金钱
5256
HASS币
100

教程狂人

发表于 2019-7-28 09:27:33 | 显示全部楼层
本帖最后由 natic 于 2019-7-28 09:29 编辑

docker非常强大,可以映射设备文件系统等到容器,可以讲一下你的lm-sensors接入ha的大致流行嘛
回复

使用道具 举报

3

主题

99

帖子

1237

积分

金牌会员

Rank: 6Rank: 6

积分
1237
金钱
1138
HASS币
0
 楼主| 发表于 2019-7-29 00:09:33 | 显示全部楼层
natic 发表于 2019-7-28 09:27
docker非常强大,可以映射设备文件系统等到容器,可以讲一下你的lm-sensors接入ha的大致流行嘛 ...

用flask写一个网站,执行sensors查询温度的命令,通过正则提取出温度,访问这个页面就会返回温度的数字,安装在docker里面的Home Assistant通过Command line Sensor获取网页返回的数组,接入
回复

使用道具 举报

23

主题

1336

帖子

6617

积分

超级版主

Rank: 8Rank: 8

积分
6617
金钱
5256
HASS币
100

教程狂人

发表于 2019-7-29 07:51:53 | 显示全部楼层
快乐之源 发表于 2019-7-29 00:09
用flask写一个网站,执行sensors查询温度的命令,通过正则提取出温度,访问这个页面就会返回温度的数字, ...

你这种方式没有问题的啊,应该是你的ip填错了,容器里面有专门的ip,所以你要填域名、路由器上面设置的主机名,或者docker网桥的地址
回复

使用道具 举报

3

主题

99

帖子

1237

积分

金牌会员

Rank: 6Rank: 6

积分
1237
金钱
1138
HASS币
0
 楼主| 发表于 2019-7-29 08:56:20 | 显示全部楼层
natic 发表于 2019-7-29 07:51
你这种方式没有问题的啊,应该是你的ip填错了,容器里面有专门的ip,所以你要填域名、路由器上面设置的主 ...

我出的问题是...程序用计划任务运行无法运行,然后用终端手动运行没问题。
然后昨天又查了一下资料。群辉里没有/sys/class/thermal/thermal_zone0/temp这个文件,然后通过查找资料,发现/sys/class/hwmon/hwmon0/device/temp2_input这个文件可以查看温度,只要除以1000就是温度,然后在docker里也可以访问这个文件
回复

使用道具 举报

23

主题

1336

帖子

6617

积分

超级版主

Rank: 8Rank: 8

积分
6617
金钱
5256
HASS币
100

教程狂人

发表于 2019-7-29 09:05:22 | 显示全部楼层
快乐之源 发表于 2019-7-29 08:56
我出的问题是...程序用计划任务运行无法运行,然后用终端手动运行没问题。
然后昨天又查了一下资料。群辉 ...

我的计划任务是可以运行的,没有问题
第二你缺少这个文件应该跟计划任务没有关系吧?你在终端能够执行查看温度的命令嘛?
回复

使用道具 举报

3

主题

99

帖子

1237

积分

金牌会员

Rank: 6Rank: 6

积分
1237
金钱
1138
HASS币
0
 楼主| 发表于 2019-7-29 16:51:01 | 显示全部楼层
natic 发表于 2019-7-29 09:05
我的计划任务是可以运行的,没有问题
第二你缺少这个文件应该跟计划任务没有关系吧?你在终端能够执行查 ...

我把运行的命令写成shell脚本,但是,终端执行可以,计划任务运行无法运行,flask run 命令,然后通过venv虚拟环境运行
回复

使用道具 举报

23

主题

1336

帖子

6617

积分

超级版主

Rank: 8Rank: 8

积分
6617
金钱
5256
HASS币
100

教程狂人

发表于 2019-7-29 17:06:40 | 显示全部楼层
快乐之源 发表于 2019-7-29 16:51
我把运行的命令写成shell脚本,但是,终端执行可以,计划任务运行无法运行,flask run 命令,然后通过ven ...

群辉的计划任务是root权限,所以你终端可以执行的,计划问题肯定也能执行
无法运行可以找下日志,看下到底出了什么问题
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-6-2 18:09 , Processed in 0.056261 second(s), 30 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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