序
实现树莓派做中控服务器的前提,是安装好一个稳定、可用的操作管理平台,即是本文所要安装的Home Assistant,它是基于Python 3开发的一套开源的家庭自动化管理平台。
安装Home Assistant 的方式有很多,这里采用的是基于Docker的Hassio系统的方式安装,在Docker里添加Home Assistant 和其他应用程序,这里也体现出Docker 的一大优势:可以任意添加所需要的软件支持!
架构图:
在安装之前,需要准备的是:
- 树莓派3B 一个;
- 高速SD卡一张,8G以上;
- 十足的耐心;
- 最好备个梯子(因为有时候慢得真的很想一锤子把它砸了23333);
注:写这篇文章的时候,我的树莓派正在安装**Homebridge**,前期可能有很多步骤上的截图没有留下来,但是...没有关系!装不上报错大不了重来2333,诶?别拿锤子啊,年轻人不要冲动
操作步骤
找一个稳定靠谱
的镜像真的很重要!很重要!本人在这里尝试了N+ 个镜像,都没办法很好的兼容,用过Ubuntu、Debian,最后选择的是Raspbian Stertch Lite,安装Hassio: Docker + Debian的方式,很多博主发过这种安装方法,但是因为时间较为久远,有一些源已更新,或者有的资源包已经失效了,导致频繁报错,最终导致无法安装。以下本文所有的安装命令,均以通过本人亲自测试,保证可用。
废话不多说,开始吧。
第一步:刷写官方镜像
下载【官方纯净版镜像】
注意:是右边那个!左边的会显示内核不兼容,下载方法随意,只要不会损坏镜像就可以,我是使用torrent 下载的;
下载完了之后,再下载Etcher工具并安装,【官方连接】
之后就可以开始,刷写镜像了。用另外一个工具也可以刷写,就是Win32diskimager,用此工具刷写SD卡如果遇到“SD卡不允许写入”的情况的话,可以用Diskgenius等工具,对SD卡先删除分区,然后再格式化为FAT32格式,再接着进行刷写镜像
刷写完成之后,先拔出SD卡,再插入就会提示有一个BOOT分区,大概几十M,在桌面新建一个名为ssh的txt 文档,然后再将它重命名,把txt后缀删掉。
然后把它拖入BOOT的根目录,推出SD卡,插入树莓派中,接上网线和电源。
Putty 安装部分
这部分坑很多,可能会出现一些莫名其妙的问题,所以要有耐心。有问题谷歌解决,我也不能保证百分百能安装上2333
Putty 登陆
安装好Putty 软件之后,先打开路由器管理界面,或者使用局域网扫描软件,扫面出树莓派的局域网IP地址,这里可以使用 MyLanViewer(PC),Fing(安卓/IOS)。
输入树莓派地址,我这里是192.168.0.130
,端口号22
,打开
打开之后,用户名是:pi
,密码是:raspberry
,回车;
好戏开始了233333
把默认的源换成国内源:
sudo nano /etc/apt/sources.list
阿里源地址:
deb http://mirrors.aliyun.com/raspbian/raspbian/ stretch main non-free contrib
deb-src http://mirrors.aliyun.com/raspbian/raspbian/ stretch main non-free contrib
更换deb源:
sudo nano /etc/apt/sources.list.d/raspi.list
deb http://mirrors.aliyun.com/debian/ stretch main ui
更换源之后,要更新一下;
sudo apt-get update
sudo apt-get upgrade -y
设置apt使用HTTPS加载镜像仓库,因为atp请求是HTTP,而Docker镜像仓库已全面启用HTTPS,所以安装Docker之前务必要执行这一步;
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg2 \
software-properties-common
安装Docker,添加官方GPG key:
curl -fsSL https://download.docker.com/linux/$(. /etc/os-release; echo "$ID")/gpg | sudo apt-key add -
安装Docker-CE仓库,最好能挂个梯子,会快一些;
echo "deb [arch=armhf] https://download.docker.com/linux/debian \
$(lsb_release -cs) stable" | \
sudo tee /etc/apt/sources.list.d/docker.list
安装Docker-CE
sudo apt-get update
sudo apt-get install docker-ce
sudo usermod -aG docker $USER
添加加Docker 仓库镜像地址:
sudo nano /etc/docker/daemon.json
进入 nano 编辑器输入:
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}
键盘 Ctrl + X,输入 Y, 按回车进行保存;
更换 Python 源
cd ~
mkdir .pip
sudo nano ~/.pip/pip.conf
进入 nano 编辑器输入:
[global]
trusted-host=mirrors.aliyun.com
index-url=http://mirrors.aliyun.com/pypi/simple
键盘 Ctrl + X,输入 Y, 按回车进行保存;
到这里差不多已经安装了 2/3 了,然后返回树莓派设置界面
树莓派设置
sudo raspi-config
使用方向键选择第四项 Localisation Options,然后再选择 Change Timezone =》Asia =》Shanghai,回车,最后按 ESC 退出当前窗口
保存后截图:
扩展内部存储至整张SD卡:
sudo raspi-config
选择第七项,Advanced Options =》 Expand Filesystem ,回车
然后重启一下:
sudo reboot
安装 Hassio
更新一下准没错2333
sudo apt-get update
sudo apt-get upgrade -y
安装依赖库:
sudo apt-get install bash socat jq -y
安装Docker UI:
docker pull portainer/portainer:latest
配置Docker UI
docker run -d -p 9000:9000 --name docker-portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer
如果这里一切顺利都没有报错的话,这里别把Putty 关了! 接下来打开 Chrome 浏览器,输入 http://树莓派IP:9000
你应该能看到这个界面。
默认账户名是:admin
,密码自己设定,但是要记住!
进去之后选择最左边的那个,把Docker 服务部署到本地树莓派上,即:Docker socket to manage a local Docker engine
(这里没有留下截图...)
然后,回到Putty 安装armhf-homeassistant镜像
docker pull homeassistant/armhf-homeassistant:latest
安装armhf-hassio-supervisor镜像
docker pull homeassistant/armhf-hassio-supervisor:latest
接下来才是正式安装 Hassio ,首先切换到root 身份登陆
sudo su
然后输入:
curl -sL https://raw.githubusercontent.com/home-assistant/hassio-build/master/install/hassio_install | bash -s -- -m raspberrypi3
安装完成之后,以 pi 身份登入,查看 Hassio 是否安装成功,然后输入:
sudo journalctl -fu hassio-supervisor.service
如有上图红色方框部分显示,则表示 Hassio 已经安装成功。
安装Homebridge
接下来可以打开 Chrome 浏览器,输入:http://树莓派IP:8123
,不出意外的话,应该能看到这个页面:
如果没能打开,清除一下浏览器缓存,或者等待一会儿就可以。进去之后选择左边栏 Hassio
然后按照下图,把HomeBridge 插件地址填入
https://github.com/zoranke/addon-homebridge
填好之后点击ADD,稍等一会儿,就会出现如3 方框内所示的这些插件:
然后,在插件列表中,选择Homebridge,点击安装,时间可能会比较长,耐心等待一会儿。
安装完成界面展示:(我这里还安装了SSH服务)
打开 家庭
最后,用任意一台IOS 设备(升级到了IOS10),打开 家庭 =》 添加设备,就会出现一个Home Assistant 的可用设备啦,是不是很神奇呢?哈哈哈哈....
结束
至此,树莓派安装 Hassio 并添加 Homne Assistant 部署HomeKit教程到此结束。