20190501更新:刷回小钢炮、继续低功耗挂PT了,虽然给自己(或者看到这个帖子有思路的坛友)挖了坑,不过也很有收获,大佬说过:万变不离其宗嘛,作为门外汉,瞎折腾多了,总会有点收获的,就这样咯。
以下是原帖:
一、说明
1、本来是我自己记下来的笔记,想着写也写了、找也找了、也简单试了,虽然没有做长时段的试运行,也干脆整理一下发出来,遇到问题也好请教一下大佬,同时也方便初入门的坛友参考;
2、本贴所有内容均不是我的原创,纯搬运;
3、文中插件(软件)Hassio系统本身基本都自带了(官方+第三方,开箱即用),你说还折腾个啥劲儿?
二、缘由
1、我闲置了个N1,想着物尽其用,所以这么搞一下,把它用起来给另外一个跑HA的N1减轻一些工作量和存储压力;
2、没赶上给N1升级内置存储的车;
3、不能在一棵树上(HA的addons插件)吊死;
三、软件介绍(需求)
装了几个,如图:
我的需求,欢迎建议:
1、aliddns:阿里云DDNS解析工具,这个就不用多说了;
2、Nginx Proxy Manager:Nginx反代工具,基于WEB的配置;
3、EMQTT:可视化界面的mqtt服务器,这个我昨晚才发现,见贴子:https://bbs.hassbian.com/thread-5712-1-1.html
4、Mariadb数据库:数据库软件,因为Nginx Proxy Manager需要用到,HA本身也可以用,所以就装上了;
5、Nodered:一直觉得牛逼,一直没尝试,再等等;
6、Pi-hole:广告过滤用的,也是才发现,见帖子:https://bbs.hassbian.com/thread-4957-1-1.html,还没尝试;
7、Homebridge:因为HA自带的homekit暂时没办法接入摄像头,可以先用这个顶替一下;
8、WEB SSH工具:萝卜大佬推荐了个shellinabox,晚一些试一试,我知道群晖有个gateone,试过挺好用;
9、想找个书签管理的软件,我的Chrome书签比较多,也分了类,但是平时用的就那么些个,好几个文件夹点来点去不方便,如果有个好看的面板,我必须要去尝试一下。
。。。。。。
上面的插件带webUI的应该是相对占用系统资源的,主要我还是习惯有WEB,回头要是N1炸了我就不试了,老老实实换平台吧。
四、方案优点
1、和HA相对独立,能多点使用;
2、多一个篮子放鸡蛋;
3、升级可控;
4、操作也很简单。
五、开始拉吧
写不了太细,记录个大概吧,开始拉(pull)之前,贴几个N1安装armbian系统的帖子,我是按照这几个帖子刷机的:
1、https://www.right.com.cn/forum/thread-510423-1-1.html
2、https://www.right.com.cn/forum/thread-335609-1-1.html
3、https://bbs.hassbian.com/thread-4274-1-1.html
从我的实际操作经验来看,严格按照帖子的步骤来,应该是不会错的,错了我也 ,
所有镜像都可以先用通用命令先拉下来,然后再配置,为了省事,一步到位也是可以的。
最新鲜的docker使用教程贴(我不会用docker-compose,回头得赶紧学习一下):
docker从入门到入坑的四个阶段
0、 porainer
docker图形化管理面板,这个很常用了。
docker run -d -p 9010:9000 --name docker-portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer
参考:
https://bbs.hassbian.com/thread-1858-1-1.html
1、emqtt
docker run -d --restart=always --name="emqx" -v /etc/localtime:/etc/localtime -p 18083:18083 -p 1883:1883 killadm/aarch64-emqx:30
参考:
https://bbs.hassbian.com/thread-5712-1-1.html
2、 mariadb
参考:
https://bbs.hassbian.com/thread-6301-1-1.html
参考:
https://bbs.hassbian.com/thread-1919-1-1.html
sudo docker run --name mariadb --restart=always -e TZ="Asia/Shanghai" -e MYSQL_ROOT_PASSWORD=你的密码 -d -p 3306:3306 -v /usr/share/docker/mariadb:/var/lib/mysql mariadb
3、nginx
参考: https://github.com/jc21/nginx-proxy-manager/blob/master/doc/INSTALL.md
docker run -d \
--restart=always \
--name nginx-proxy-manager \
-p 8080:80 \
-p 8181:81 \
-p 4443:443 \
-v /usr/share/docker/nginx-proxy-manager/config.json:/app/config/production.json \
-v /usr/share/docker/nginx-proxy-manager/data:/data \
-v /usr/share/docker/nginx-proxy-manager/letsencrypt:/etc/letsencrypt \
jc21/nginx-proxy-manager:latest
需要配置数据库mariadb,按照L大帖子操作即可,需要把命令中的“homeassistant”和“hass”替换成nginxproxymanager。
然后配置config.json文件,配置信息:
{
"database": {
"engine": "mysql",
"host": "你的IP",
"name": "nginxproxymanager",
"user": "nginxproxymanager",
"password": "你的nginxproxymanager数据库密码",
"port": 3306
}
}
文件位置在上面映射的路径文件夹下,我设置的是“/usr/share/docker/nginx-proxy-manager/”。
3、node-red
失败尝试如下,因为是官方镜像,也支持arm64平台,结果不成功,看N大回别的帖子说要用rpi-v8,大佬能看出来这个初始配置哪儿有问题么:
docker run --net=host -p 1880:1880 --name nodered -v /usr/share/docker/nodered:/data nodered/node-red-docker:rpi-v8
docker run -it -p 1880:1880 --name nodered -v /usr/share/docker/nodered:/data nodered/node-red-docker:rpi-v8
docker run --net=host -p 1888:1880 --name nodered2 nodered/node-red-docker:rpi-v8
docker run -it -p 1880:1880 --name nodered2 nodered/node-red-docker:rpi-v8
换了个镜像成功:
docker run -d --net=host --restart=always -e TZ="Asia/Shanghai" -p 1880:1880 --name nodered -v /usr/share/docker/nodered:/data raymondmm/node-red
备注:我把待映射的文件夹权限提前改成了0777,才正常运行起来。
4、homebridge
docker run -d \
--net=host \
--name=oznu_homebridge \
--restart=always \
-e PUID=1007 -e PGID=1015 \
-e TZ=Asia/Shanghai \
-v /usr/share/docker/homekit:/homebridge \
oznu/homebridge:aarch64
日志显示有点问题,我上次成功过的啊。
5、SSL证书申请
参考:
https://bbs.hassbian.com/thread-3105-1-1.html
- 申请证书
docker run --rm \
-v ~/acme.sh:/acme.sh \
-e Ali_Key="你的key" \
-e Ali_Secret="你的Secret" \
neilpang/acme.sh --issue --dns dns_ali -d 你的域名
- 以守护进程方式运行 acme.sh 容器
docker run --name acme.sh \
-d --restart unless-stopped \
-v ~/acme.sh:/acme.sh \
neilpang/acme.sh daemon
N大发的这个好像不能运行在arm64上,回头再找找。
6、aliddns
参考:
https://bbs.hassbian.com/thread-3499-1-1.html
https://bbs.hassbian.com/thread-2787-1-1.html
上面帖子的镜像是x86平台的,在hub里面找到一个arm64能用的:
来源: https://hub.docker.com/r/sanjusss/aliyun-ddns
配置:
docker run -d --restart=always --net=host \
--name=aliddns \
-e "AKID=你的key" \
-e "AKSCT=你的Secret" \
-e "DOMAIN=你的域名" \
-e "ENDPOINT=cn-hangzhou" \
-e "IPAPI=https://ipapi.co" \
-e "REDO=600" \
-e "TTL=60" \
-e "TIMEZONE=8.0" \
-e "TYPE=A" \
sanjusss/aliyun-ddns
备注:我用aliddns这些插件的时候,不手动配置IPAPI的话(用默认的)经常出问题,两个IP来回跳,所以后来我就换了成了上面的那个API,仅作参考。
六、 小结
全文搜索挺好用的,入口不见了。。。
发帖可升级,就是累点,我也发不动了: