教你用树莓派安装集成docker版openwrt、homeassistant等及一些排坑指南
创作立场声明:本人第一次写教程,也是为了记录折腾hass过程中遇到的各种小问题及一些个人见解,希望能帮助到一些像我一样啥都不懂的小白,帖子中可能会有一些错误和不足之处,恳请各位大佬能及时批评指正,以免因为我的错误而误导了其他人。
大家好,这是我在张大妈这发布的第一篇文章,写的不好,还请大家多多关照。
这次主要是想说说自从上周接触到IT commander大佬发布的树莓派64位镜像,集成DOCKER版本OPENWRT,还有HOME ASSISTANT以及N1 智能家居镜像出炉,ARMBIAN系统全DOCKER形式包含OPENWRT这两篇帖子以来,一时心痒痒,重新拿出吃灰多年的树莓派3B+以及春节入手的N1折腾了起来。hass智能家居系统我就不多介绍了,很强大的系统,但是坑也很多,稍不注意就要花半天时间去排坑
其实这两个版本的安装站内阿文菌大佬的两篇帖子都有写道
IT commander大佬在国内B站上也有相关的视频教程,本固件的内容在B站的第25集。
那我为什么还要写这篇帖子呢,主要是没有详细的教程,我这个小白遇到了好多坑,重复刷写了七八次都没成功,各种报错!
发这个贴子主要是为了记录从安装使用过程中遇到的一些问题以及自己排坑所查找的解决方法,里面都是一些个人见解,方便一些像我一样啥都不懂的小白能看到,帖子中会有一下技术错误希望大佬及时批评指正。
本次固件介绍:
树莓派的固件是集成了docker版本的homeassistant、configurator、MQTT、ESPhome、Mopidy、openwrt等项目在内的强大省心固件,固件的下载链接借用阿文菌大佬的度盘地址链接:提取码:17z8。
第一步:下载固件,刷写系统
下载完成后将zip文件解压得到Pi64-OpenFans.img的文件,此为镜像文件,待会要刷入的就是它。
准备一个16G的TF卡,清空里面的文件,使用DiskGenius或者SD Card Formatter等分区格盘软件将优盘重新格式化一遍。推荐使用SD Card Formatter内的Overwrite format(覆盖格式化),格式化时一定要再三确认格式化的盘符有没有选错! 千万别选到其他盘符上去了! 不确定的话就打开计算机看一下你TF卡的盘符!
格式化好了之后使用Win32DiskImager等写盘软件将我们解压出来的镜像文件刷入TF卡。我这里用的是之前从树莓派官网下载resbain镜像时一起下载的Etcher软件。软件打开后选择下载的镜像文件,确定好我们使用的TF卡,最后点击Flash等待烧写完成即可。烧写镜像大概需要十分钟左右,完成后你会看到下图的提示。
然后将TF卡装回树莓派上电开机,初次使用会安装很多程序,代码得跑好几分钟,等到下面这个画面出现,说明已经启动成功了。
接下来我们就可以使用电脑上的ssh软件连接我们的树莓派进行下一步docker、openwrt、hass等软件的安装了。
第二步:几项设置,提高成功率
安装IT commander大佬的说法,完成刷写系统之后,就可以执行下面的终极命令完成安装了。
bash<(curl -L -s https://sumju.net/docker.sh)
不过经过我N次的尝试,我觉得在此之前增加一些设置可以极大的提高刷机的成功率,否则你在安装过程中将遇到各种各样的问题。虽然做了设置,也会因为各种问题而报错,这种情况下,最简单粗暴的方法就是再次执行刷机命令,执行十几次以后,肯定会有成功的时候的
我已经感受过刷写七八次的痛苦了,为了大家尽量可以减少刷写报错的几率,建议按以下来进行设置一下看看吧。
我们先打开ssh软件连上树莓派,这里我用的是xshell,输入从路由器里找到的分配给树莓派的ip地址或者直接使用 itcommander.local就能访问,用户名:pi 密码:raspberry
1、启用root账户:
首先我们可以启用root账户来避免每次使用pi账户时都需要添加sudo的麻烦,输入:
sudo passwd root
再输入两次设置的新密码之后,屏幕上出现passwd: password updated successfully 提示成功更新密码,此时,root用户已经启用了。
接下来我们进入root账户,输入:
su root
输入你刚刚设置的密码后,屏幕上显示root@itcommander:/home/pi# 此时,你已经可以进行root权限的操作了。
2、修改国内源
接着我们来修改树莓派系统的国内源,输入
vi /etc/apt/sources.list
按回车之后我们就进入了镜像源的设置文件。
系统已经给我们换上了清华的镜像源,国内源除了清华之外还有很多,主要看地理的距离。我这边离中科大近些,所以换成了中科大的镜像源。
按i进入编辑模式,将原有的代码全部加#号注释掉,再下面加入中科大的源地址。
deb https://mirrors.ustc.edu.cn/debian/buster main contrib non-free
deb https://mirrors.ustc.edu.cn/debian/buster-updates main contrib non-free
debhttps://mirrors.ustc.edu.cn/debian-security/ buster/updates main contribnon-free
我这里使用https地址,可以有效避免国内运营商的缓存劫持。
按住键盘shif,鼠标右键就可以将上面的代码粘贴进去,按esc退出编辑模式,输入法在英文状态下,按:wq进行保存退出。
3、修改debian软件源
之后我们修改debian软件源,输入
vi /etc/apt/sources.list.d/rpi.list
按回车进入,同样使用上面的步骤进行修改保存
debhttp://mirrors.ustc.edu.cn/archive.raspberrypi.org/debian/ buster main uii
最后我们执行代码更新系统和软件包。
sudo apt-get update && apt-getupgrade -y
东西比较多,时间会比较长一点,我们可以去喝杯水等一下
在更新过程中,如果我们遇到了类似于上述NO_PUBKEY xxxxxx的这种错误,不要慌,只需要更新一下公钥就可以了,代码如下
apt-key adv --recv-keys --keyserverkeyserver.ubuntu.com xxxxxxxx (这个xxxxxx的公钥根据你自己报错的提示来写)
比如我这边的报错提示就是82B……那我就输入apt-key adv --recv-keys --keyserverkeyserver.ubuntu.com 82B129927FA3303E,接着回车执行后,再执行上面更新系统和软件包的代码即可。
其实到这里我们的基础设置就差不多,输入sudo reboot重启下我们的树莓派就可以执行那条终极安装指令了。
不过在重启之前我这里还会有一个小操作,要不要执行这一步,就根据每个人自己的需要来看了
4、固定树莓派IP地址
这一步的内容是设置树莓派为固定ip,以便我们重启之后可以使用固定的IP来访问而不是每次都要去路由器里看分配的ip地址。当然除了修改ip之外,还可以修改我们树莓派的网关地址,科学使得我们下一步终极安装时网络可以更加顺利点。(因为我家里部署了旁路由(网关服务器),具体用来干什么的我就不解释了)
我们输入vi /etc/dhcpcd.conf,来到整个文件的最下面,按i键进入编辑模式,把你要修改的相关ip地址信息复制到文件内保存即可。
interface eth0
static ip_address=192.XXX.XX.XX/24 (根据你自己的实际情况设置)
static routers=192.168.XX.XXX (根据你自己的实际情况设置)
static domain_name_servers=223.5.5.5114.114.114.114
最后我们按esc退出,:wq保存。然后输入sudo reboot,让树莓派重启就可以了。
第三步:执行终极安装命令
等重启好了后,我们再次使用ssh软件进入树莓派,执行最后一步终极安装指令
bash<(curl -L -s https://sumju.net/docker.sh)
因为需要下载安装部署几个G的文件,这个过程会持续1-2小时,建议在夜深人静的网好的时候进行。我这次花了1个小时20分钟。
虽然小心翼翼的进行了设置,但是在安装过程中还是有出现Erro can not fail等报错的小状况,只好简单记录下来等着它安装执行完毕看看是什么情况再说。
经过1.3小时的等待,系统安装结束并自动重启了,我们按照作者帖子里说的的端口访问一下几个内置项目看有没有成功。
第一个CockPitweb控制台,我们输入屏幕提示的https://itcommander:9090,或者树莓派获取的ip地址https://192.xx.xx.xx:9090来进行访问,默认用户名pi密码raspberry,进去后就可以对系统进行关机、重启,配置网络和防火墙、管理用户账号,监视系统服务等,不过我一般都用不到,不做深入研究介绍。
第二个就是树莓派安装docker之后提供的UI界面:Portainer
访问地址是https://itcommander:8443或https://192.xx.xx.xx:8443来访问。第一次进入需要我们设置好账号密码创建用户,进去后需要我们选择第一个:本地容器
这里我们看到已经有14个镜像,13个容器。点击鲸鱼图标进入到容器列表
在这里可以一目了然的看清楚14个镜像的的安装状态,除了第一个node-red健康检查之外,其他的都是正常的running,说明我们的安装一次成功了。只要不影响正常功能,前面的几个报错可以忽视了,反正我是不会再装第二次了。之前各种报错,安装好了各种页面打不开,真的受够了!!!
补充1、容器内没有镜像怎么办?容器内镜像运行不正常怎么办?
重新执行终极命令安装!!!
那是开玩笑滴!完整的重新安装一遍,太费时间了
其实我们缺了什么,可以直接访问https://sumju.net/docker.sh,找到安装你需要的镜像docker run的部分,把安装代码拷贝到ssh里执行安装一次即可,不需要执行整个终极安装代码的。
比如,我现在在docker里把ioBroker的容器和镜像文件都删除了,现在只有13个镜像13个容器在运行
我现在需要单独安装ioBroker的话,只需要找到ioBroker这个镜像docker run的部分,把红框里的代码复制粘贴到ssh软件里,按回车执行,等待完成即可。
完成后我们再次刷新Portainer容器页面,就可以看到增加了一个新的容器,并且已经在正常运行了。
等你安装好你需要的容器之后,接下来我们就可以愉快的玩耍了。不管是玩hass折腾esphome还是用树莓派的openwrt来作为旁路由使用,都随便你,有不会的地方要善用网络搜索,多查看前人的教程。相信你会越陷越深嗒~~
补充2、N1固件docker里为啥没有14个镜像?N1要不要写入emmc?为啥hass左侧栏有几个插件打不开?
最后再说一下N1的安装和使用大佬的固件需要注意的,只说一点作为补充,因为站内已经有阿文菌大佬的详细安装分享以及Wayne505的纯新手排坑指南了,我也是借鉴了他们的经验在N1上也完成了安装。
N1因为emmc空间的问题,所以docker里集成的容器会少一两个,并且esphome、iobroker、nodered这三个是默认没有安装的,所以在hass左边栏你是打不开的。
如果需要安装,我建议是插上优盘,按上面所说的挨个docker run一遍,就算安装好了,iobroker也不能在hass左边栏进行访问,需要用ip+端口进行单独访问。Node-red的访问需要安装苹果iTunes,这些都是IT commander大佬在群里说的。
另外,我建议先完整的安装在优盘内,然后再执行./install.sh命令,尝试写入emmc。
关于是否要写入emmc的问题,我是没有做,担心emmc空间不够,插着优盘挺好的。哪天不用了,拔下优盘,N1照样还是个电视盒子。
最后:
不说了,既然入了hass这个坑,我要好好去学习折腾一下了。
这是我安装在群晖docker上的hass,树莓派和N1刚装完系统还没来得及弄
折腾了好久,第一次写教程,也是为了记录过程中遇到的各种小问题及一些个人见解,希望能帮助到一些像我一样啥都不懂的小白,帖子中可能会有一下错误恳请各位大佬能及时批评指正,以免因为我的错误而误导了其他人。
有问题欢迎大家一起讨论,也欢迎大家对我的第一篇分享进行点赞、收藏、评论三连支持! 你们的支持,是我后面继续分享的动力~~
天外来鸿
校验提示文案
wmgylc
校验提示文案
imjacob
校验提示文案
值友9462991998
校验提示文案
值友6075113924
校验提示文案
JayZhong
校验提示文案
再查还是无此人
就是命令里面少了不少空格,哈,麻烦楼主订正一下,不然我们这些小白要哭了
校验提示文案
小狗尾巴草
校验提示文案
AT_颜七岁
校验提示文案
cnadl
校验提示文案
非小白
校验提示文案
灵KOYB
校验提示文案
violente
校验提示文案
汗宝
校验提示文案
值友7495333373
校验提示文案
值友7495333373
校验提示文案
汗宝
校验提示文案
再查还是无此人
就是命令里面少了不少空格,哈,麻烦楼主订正一下,不然我们这些小白要哭了
校验提示文案
值友6075113924
校验提示文案
violente
校验提示文案
JayZhong
校验提示文案
灵KOYB
校验提示文案
非小白
校验提示文案
值友9462991998
校验提示文案
imjacob
校验提示文案
cnadl
校验提示文案
AT_颜七岁
校验提示文案
wmgylc
校验提示文案
小狗尾巴草
校验提示文案
天外来鸿
校验提示文案