找回密码
 立即注册

微信扫码登录

搜索
查看: 48|回复: 0

[技术探讨] ESPHome国内安装及网络问题解决

[复制链接]

2

主题

5

回帖

115

积分

注册会员

积分
115
金钱
108
HASS币
0
发表于 2025-8-28 17:28:37 | 显示全部楼层 |阅读模式
本帖最后由 rocks 于 2025-8-28 17:30 编辑

看到有人问最近的网络问题,造成更新或者编译出现问题,实际都是网络原因引起的问题。刚好我前几天刚装了docker版的dev9.0,把大概流程梳理下吧。

零、安装docker
我是在Ubuntu22.04虚拟机内安装的,linux环境应该类似。在上面首先安装好docker和docker-compose,这一步不需要特别设置代理,ubuntu换源即可,主要是使用sudo apt 安装相关的docker。不熟悉docker安装的可百度docker,我按照docker官方安装流程提供的命令完成了安装,没有遇到网络问题。当然也可以问AI,安装完docker需要创建组,然后把root或者自己登入的账户添加进组,不然没有权限,这一步问deepseek可以给你很详细的指导。

关于esphome我使用的是官方推荐的docker-compose方式。
首先我们确定要安装的esphome版本,下面地址为esphome在github上面发布的版本地址,可访问查看有哪些版本的docker(github有时候需要科学上网)
ghcr.io/esphome/esphome

官方的教程ESPHome 命令行入门 - ESPHome - 智能家居变得简单,我们不使用命令行拉取容器,采用compose方式。
我Ubuntu22.04安装创建的账号名为ubuntu,ubuntu内用户文件夹即为ubuntu,我在用户目录下面创建了esphome文件夹,使用pwd命令回显为:/home/ubuntu/esphome,不同账户该路径有差异,/home/username/esphome下面记得修改一致。
我们在ubuntu一个目录下创建docker-compose.yml文件,里面添加如下内容:


<div>version: '3'
services:
  esphome:
    container_name: esphome
    image: ghcr.io/esphome/esphome:2025.9.0-dev20250826   #上面github打开可以看到很多分支,可以任选。不想指定版本ghcr.io/esphome/esphome即为最新发行版
    volumes:
      - /home/ubuntu/esphome:/config     #本地的目录/home/ubuntu/esphome映射容器内的/config
      - /etc/localtime:/etc/localtime:ro
    restart: always
    privileged: true
    network_mode: host   #与主机共享网络
    devices:
      - "/dev/ttyUSB0:/dev/ttyUSB0"  # 将主机的串口设备(如USB转串口模块)映射到容器内,用于刷写固件
    environment:
      - TZ=Asia/Shanghai  # 设置容器时区,例如Asia/Shanghai
      #- HTTPS_PROXY=http://192.168.1.4:2334 #设置科学上网的代理
      #- HTTP_PROXY=http://192.168.1.4:2334 #设置科学上网的代理</div>


一、首先解决网络问题
我分享一个网站Devpn 得自由 欢迎您 | Devpn 得自由 然后点左上角免费试用,每次点都可获得一个小时临时账号,不建议购买。足够我们安装好esphome和esp32及esp8266的环境包、编译教程工具链等需要从github下载的东西了。

进入里面选择Hiddify for Ubuntu 使用教程 | Devpn 得自由,然后在ubuntu上面安装,并且添加订阅获得的链接。这样我们Ubuntu就可以高速访问github下载东西了。在配置页面打开允许局域网连接选项,为后续局域网内的docke提供代理。




二、ESPHome docker容器安装
我们在docker-compose.yml同目录下打开shell,然后执行下面命令
docker-compose up -d
即可开始拉取安装ESPhome,等待gihub下载完,即运行,我们打开浏览器即可使用esphome创建设备页面。因为ubuntu运行了hiddify,访问github很快,拉取安装大概几分钟就可完成。
因为安装好后一打开ubuntu,docker就运行,但是我们想更改配置重新生效,我们需要停止容器,更改配置后重新再启动,可以使用下面命令停止容器。
docker-compose down
上面yaml注释掉的即为代理设置

      #- HTTPS_PROXY=http://192.168.1.4:2334 #设置科学上网的代理
      #- HTTP_PROXY=http://192.168.1.4:2334 #设置科学上网的代理

在不需要时候可以注释,需要时候取消前面的#。

打开后,我们需要软件设置局域网为docker代理。
192.168.1.4为我Ubuntu虚拟机的局域网IP,我虚拟机网络设置的桥接模式:直连的路由器,跟一台物理机一样。2334为下面hiddify的混合端口号,clash猫是另外的端口号,同理,然后在配置页面打开允许局域网连接选项,即可为局域网内的其它设备提供代理。
image.png

完成后我们重新启动esphome容器,里面对github等网站下载网速就会恢复正常。

这样在esphome页面,我们创建的esp32或者esp8266,下载工具链,包,都会非常快。出现的编译问题也可解决。


回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian ( 晋ICP备17001384号-1 )

GMT+8, 2025-9-13 03:27 , Processed in 0.485509 second(s), 12 queries , MemCached On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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