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

 找回密码
 立即注册
查看: 43327|回复: 28

[基础教程] 让HACS下载更稳定(续)

  [复制链接]

19

主题

251

帖子

1138

积分

金牌会员

Rank: 6Rank: 6

积分
1138
金钱
887
HASS币
0
发表于 2020-12-23 16:23:29 | 显示全部楼层 |阅读模式
本帖最后由 itispip 于 2020-12-24 08:48 编辑

可能很多人都知道,HACS装好以后,在国内网络条件下,并不能用它来安装社区插件。

B站的ITCommander,也就是本站的@marcozy提供了修改docker里的hosts方案。教程如下:
https://www.youtube.com/watch?v=1cIn3-A8d4o

这个方案的缺陷是修改的hosts重启即失效,手动修改又特别繁琐,并且需要安装portcontainer插件,浪费机器资源。

解决方法有2个:
(1)自己重新编译docker:homeassistant,把raw.githubusercontents.com对应的IP写入hosts里面去。
         优点:一次性设置,永远的方便
         缺点:(a) github的IP地址会发生变化,每次变化了就得重新编译。(b)编译docker对小白完全没可能

(2)命令动态修改hosts文件。只需要在Host里开机执行:
         docker exec homeassistant bash -c "echo '199.232.96.133 raw.githubusercontent.com' >> /etc/hosts"
         优点:(1)即使手动,也方便快捷(2)可以更进一步的开机自动执行,一次性设置,永远的方便
         缺点:好像没有


评分

参与人数 1金钱 +5 收起 理由
793919425 + 5

查看全部评分

回复

使用道具 举报

77

主题

1391

帖子

2万

积分

元老级技术达人

积分
24331
金钱
22900
HASS币
290
发表于 2020-12-23 19:44:23 | 显示全部楼层
如果路由器是openwrt的,就很方便,可在网络-dhcp/dns-自定义挟持域名里设置。
回复

使用道具 举报

6

主题

186

帖子

1230

积分

金牌会员

Rank: 6Rank: 6

积分
1230
金钱
1044
HASS币
0
发表于 2020-12-23 19:50:12 | 显示全部楼层
一直再找方法解决 ,感谢大佬
回复

使用道具 举报

9

主题

787

帖子

3858

积分

论坛元老

Rank: 8Rank: 8

积分
3858
金钱
3071
HASS币
87
发表于 2020-12-23 23:38:57 | 显示全部楼层
原来关键点是这个 199.232.96.133 raw.githubusercontent.com
终于hacs可以用了.
回复

使用道具 举报

0

主题

22

帖子

179

积分

注册会员

Rank: 2

积分
179
金钱
157
HASS币
0
发表于 2020-12-24 08:49:00 | 显示全部楼层
令狐鸣 发表于 2020-12-23 23:38
原来关键点是这个 199.232.96.133 raw.githubusercontent.com
终于hacs可以用了.

githubusercontent.com确实超级烦人
回复

使用道具 举报

40

主题

2176

帖子

8288

积分

元老级技术达人

积分
8288
金钱
6097
HASS币
110
发表于 2020-12-24 08:58:37 | 显示全部楼层
为此弃用HACS很久了
不止一次HACS恢复初始状态,它又扫描不到我当前装了哪些插件,只能全部重新装一遍 烦死
回复

使用道具 举报

40

主题

3056

帖子

1万

积分

超级版主

Nero

Rank: 8Rank: 8

积分
11149
金钱
8042
HASS币
182
发表于 2020-12-24 08:59:29 | 显示全部楼层
本帖最后由 neroxps 于 2020-12-24 09:08 编辑

如果hassio 更新了ha 配置也会丢掉,可以做一个 ha 的 shell 自动化,ha 启动的时候检查hosts 是否存在 github 的内容,如果不存在就写进去。
可以在路由那边挟持所有的 dns 请求(但是 hassio 用的 coreDns 是用 cf 的 dns over ssl 可能会失效)
还有就是每个地区的封锁策略不一样,有可能某些地区无法访问这个IP地址。
Nero
回复

使用道具 举报

19

主题

251

帖子

1138

积分

金牌会员

Rank: 6Rank: 6

积分
1138
金钱
887
HASS币
0
 楼主| 发表于 2020-12-24 09:25:41 | 显示全部楼层
neroxps 发表于 2020-12-24 08:59
如果hassio 更新了ha 配置也会丢掉,可以做一个 ha 的 shell 自动化,ha 启动的时候检查hosts 是否存在 git ...

所以我才推荐第五个安装方式啊,自动换脚本都在host里面,不怕hassio更新

https://bbs.hassbian.com/thread-11553-1-1.html
回复

使用道具 举报

19

主题

251

帖子

1138

积分

金牌会员

Rank: 6Rank: 6

积分
1138
金钱
887
HASS币
0
 楼主| 发表于 2020-12-24 09:28:52 | 显示全部楼层
itispip 发表于 2020-12-24 09:25
所以我才推荐第五个安装方式啊,自动换脚本都在host里面,不怕hassio更新

https://bbs.hassbian.com/thr ...

付自动化脚本内容。我是把这个脚本由rc.local开机调用

add-container-host.sh
==================

#!/bin/sh

docker_target="homeassistant:"
host_target="raw.githubusercontent.com"

while true
do
        result=$(docker container ps | grep "$docker_target")
        if [ "$result" != "" ]
        then
                echo $(date) "$docker_target is running"
                sleep 10
                result=$(docker exec homeassistant cat /etc/hosts | grep "$host_target")
                if [ "$result" != "" ]
                then
                        echo $(date) "$host_target already exist"
                else
                        echo $(date) "$host_target not exist"
                        docker exec homeassistant bash -c "echo '199.232.96.133 raw.githubusercontent.com' >> /etc/hosts"
                fi
        else
                echo $(date) "$docker_target not started"
        fi
        sleep 1
done

回复

使用道具 举报

40

主题

3056

帖子

1万

积分

超级版主

Nero

Rank: 8Rank: 8

积分
11149
金钱
8042
HASS币
182
发表于 2020-12-24 10:48:18 | 显示全部楼层
本帖最后由 neroxps 于 2020-12-24 10:49 编辑
itispip 发表于 2020-12-24 09:25
所以我才推荐第五个安装方式啊,自动换脚本都在host里面,不怕hassio更新

https://bbs.hassbian.com/thr ...

我意思是 直接用 ha 的自动化来做就不需要管什么环境了

我在找有没有比较完整 github 的地址更新方案

目前有两个思路,一个找现成的,https://github.com/jianboy/github-host 这个哥们用 github workflows 每天更新一次地址解析,再用 jsdelivr 的 cdn 拿他的 hosts 就好了.

一个思路就是从 https://api.github.com/meta 找亚洲的地址,但是 https://api.github.com/meta 没有被 CDN 覆盖到,所以需要到 github 开一个 workflows  把api找下来,然后更新 hosts
Nero
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-25 13:35 , Processed in 0.702635 second(s), 33 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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