Docker部署homeassitant

一、Docker介绍

我们知道,一台物理机需要运行多个程序,然而每个程序又需要各自不同的一堆依赖,所有程序全装上的话,整个物理机系统会变得混乱不堪,同时也容易出问题,使得我们后续维护比较困难。而如果利用docker,就可以直接下载一个镜像,投入使用,整个流程就变得简单了,详细介绍可以看官方文档。

贴上地址:https://docs.docker.com/get-started/

二、部署homeassitant

本文采用的部署方式是:通过云服务器部署hass,之后通过hass集成小米智能家居设备。

准备一台云服务器

  • 操作系统:CentOS 7.7 64位

1、安装docker

连接上云服务器后:

贴下命令

# 先切换到root 用户,先安装一些基本环境:
yum install -y yum-utils device-mapper-persistent-data lvm2
#添加阿里云软件源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#然后安装 Docker 社区版
yum -y install docker-ce
#启动 docker
systemctl start docker
#设定开机自动启动docker
systemctl enable docker
#查看docker运行状态
systemctl status docker
#查看 docker 版本信息
docker version

版本信息:

  • docker 服务显示为绿色的 running 了,表示运行中

需要注意的是,docker 默认要求必须使用 root 用户或者 docker 用户组里的用户,才能进行操作

#把当前用户加入 docker 用户组
sudo usermod -a -G docker 用户名
#重启 docker 服务
sudo systemctl restart docker

2、安装portainer容器管理图形界面

  • portainer可以选择性安装,只是比较方便操作

    贴下命令:

#拉取最新镜像
docker pull portainer/portainer
#运行容器
docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
#参数说明:
-d:容器在后台运行;
-p 9000:9000:把容器的9000端口映射到宿主的9000端口,这是访问portainer管理页面需要用的端口
-v /var/run/docker.sock:/var/run/docker.sock :把宿主机目录挂载到容器中同样的位置
-v portainer_data:/data #把宿主机portainer_data数据卷挂载到容器/data目录访问:IP+9000端口,就会看到 portainer 管理页面了

portainer 管理页面:

3、部署hass

#拉取hass的最新版镜像(注意:根据自己需求选择对应版本,并不是越新越好)
docker pull homeassistant/home-assistant:latest
#创建容器并运行
docker run -d --name="hass" -v /home/hass/config:/config -p 8123:8123 -p homeassistant/home-assistant:latest
解释:
-d:表示在后台运行
–name:给容器设置一个名称,用于识别,这里起名叫做hass
-v:配置目录映射(容器内的指定目录直接映射到本地主机的对应目录,比如上面那句命令,意思就是将容器里hass的 config 目录映射到 /home/hass/config 这个目录里面)
-p:映射端口(将容器内的8123端口直接映射到物理机的8123端口,这样服务器的IP地址+端口号即可访问hass页面)
最后就是运行刚才下载的容器镜像了,对于其他的版本了,注意要加上tag,避免自动下载最新版本。

4、访问hass

  • 访问页面

到此,hass就在云服务器就部署好了,下面通过Hass,连接智能设备,本文通过连接小米智能设备来演示。

三、连接小米智能家居设备

1、安装HACS

  • 安装HACS(Home Assistant Community Store,一个商店,集成丰富,依托于GitHub。
#进入hass目录,安装hacs
docker exec -it hass bash
wget -p -o - https://get.hacs.xyz |bash -
  • 重启hass

    经过与GitHub授权访问后,你可以将HACS添加进组件中了。

2、安装xioami_miot

  • 通过hacs自动安装

    • 打开 Home Assistant 的 HACS 页面。
    • 搜索xiaomi_miot
    • 点击集成
    • 点击右下角的浏览并添加存储库
    • 在新打开的页面中找到Xiaomi MIoT,安装即可。
  • 手动安装

  1. 下载插件 zip 压缩包

    贴上: https://github.com/ha0y/xiaomi_miot_raw/archive/refs/heads/master.zip

  2. 依次打开压缩包中的xiaomi_miot_raw-master/custom_components文件夹。

  3. 将该文件夹中的xiaomi_miot_raw文件夹拷贝至自己 hass 安装目录的custom_components文件夹,即替换掉原来的xiaomi_miot_raw

  4. 重新启动 Home Assistant。

3、集成小米智能设备

  • 配置界面->添加集成->搜索xiaomi_miot->登录小米账号
  • 自动识别该账号下的智能设备
  • 添加

现在,我们可以通过部署在云服务器上的Hass,来操控我们的小米智能家居设备了,所以索性买了灯泡和台灯试了试

苹果用户的话,也可以直接下载Hass

当然,直接集成homekit,也可以同步小米的设备,能更方便的操作。大家可以试试

四、docker常用命令

附上docker常用的一些操作指令:

docker images 查看镜像
docker rmi 镜像id 删除镜像
docker ps-a 查看已有容器
docker start 容器id 运行容器
docke ps 显示所有运行中的容器
docker ps -a 显示所有容器
docker rm 容器 ID 或名称 删除容器
docker start 容器 ID 或名称 启动指定容器
docker stop 容器 ID 或名称 停止指定容器
docker restart 容器 ID 或名称 重启指定容器

Docker部署homeassitant相关推荐

  1. Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数Demo

    Docker 部署SpringBoot项目整合 Redis 镜像做访问计数Demo 最终效果如下 大概就几个步骤 1.安装 Docker CE 2.运行 Redis 镜像 3.Java 环境准备 4. ...

  2. Docker 部署SpringBoot项目不香吗?

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 作者:流星007 链接:toutiao.com/i68433912 ...

  3. docker部署springboot_Docker+SpringBoot快速构建和部署应用

    前言 Docker技术发展为当前流行的微服务提供了更加便利的环境,使用SpringBoot+Docker部署和发布应用,其实也是一件比较简单的事情.当前,前提是得有Docker的基础. 构建一个Spr ...

  4. docker初体验:docker部署nginx负载均衡集群

    Docker 是一个用于开发,交付和运行应用程序的开放平台.Docker 使您能够将应用程序与基础架构分开,从而可以快速交付软件.今天来为大家演示一下docker部署nginx负载均衡集群 环境 ce ...

  5. docker初体验:docker部署nginx服务

    Docker 是一个用于开发,交付和运行应用程序的开放平台.Docker 使您能够将应用程序与基础架构分开,从而可以快速交付软件.今天来为大家演示一下docker部署nginx 环境 centos7 ...

  6. Docker系列 四.Docker部署SpringBoot

    四.Docker部署SpringBoot 环境&工具: 阿里云轻量级服务器.CentOS 7系统.FinalShell(其他连接客户端也可以).IDEA 1. 创建springboot项目 这 ...

  7. Docker部署文档

    Docker部署文档 目录 Docker部署文档 1 一.什么是Docker 3 1.1Docker简介 3 1.2对比传统虚拟机总结 4 1.3Docker通常用于如下场景: 5 1.4基本概念 5 ...

  8. Docker部署Zookeeper集群

    Docker部署Zookeeper集群 官方网站: http://zookeeper.apache.org/ http://zookeeper.apache.org/doc/r3.4.8/zookee ...

  9. 部署go的web应用_使用Docker部署Go Web应用

    为什么需要Docker? 使用docker的主要目标是容器化.也就是为你的应用程序提供一致的环境,而不依赖于它运行的主机. 想象一下你是否也会遇到下面这个场景,你在本地开发了你的应用程序,它很可能有很 ...

  10. docker部署python web应用_在 Docker 中运行一个 Python 的 Web 应用

    几周前, Elastic Beanstalk声明在AWS云中配置和管理Docker容器.在本文中,我们通过一个简单的注册表单页面应用去理解Docker部署过程,该表单使用Elastic Beansta ...

最新文章

  1. android 按住拖动gallery防止马上加载数据导致gallery卡的方法
  2. 博三才发文章,打破学校零记录,华科博士入职华为年薪201万
  3. KVM总结-KVM性能优化之网络性能优化
  4. 图的链式前向星表示及深度广度优先遍历
  5. 企业级生产环境CICD入门
  6. 航天生物计算机新能源你对哪个领域的课,写作《语言简明》课件.ppt
  7. Helm 3 完整教程(十九):Helm 流控制结构(3)range 语句
  8. input输入框只允许输入数字/ 数字+小数点/ 文字+字母/ 等解决方法
  9. 为ASP.NET MVC Client-side Resource Combine 添加中文支持
  10. 关联规则算法Apriori的学习与实现
  11. C向Python传递数组参数时,调用函数后才能销毁
  12. Win10无线投屏功能安装失败解决办法
  13. 圆锥曲线之用齐次法求解直线过定点问题
  14. 网课公众号搜题接口获取教程
  15. 网络科学论坛纪要-2012
  16. 实习收获之 获取json对象键值的几种方法
  17. 个人技术总结——Unity中角色动画制作及动画切换逻辑的实现
  18. 用STM32和ULN2003控制28BYJ-48步进电机正反转固定角度
  19. mybatis批量更新数据三种方法效率对比
  20. 证伪主义 | A Little Sight of Falsification

热门文章

  1. CALLBACK / 回调(diao)
  2. centos6.5 大于16T硬盘 分区和格式化挂载
  3. 服务器硬盘噪音大怎么回事,东芝服务器硬盘响声大吗?
  4. 四大里snr是什么职位_四大会计师事务所人员流动性高的原因是什么?
  5. php流量计算单位,数据流量单位换算(流量单位的读法和换算)
  6. BAT脚本编写教程(比较易懂和全面)
  7. X86和X64的区别
  8. 图书馆图书管理系统python_使用python的简易图书馆管理系统
  9. linux给文件夹图标,Linux 如何在启动器中自定义图标
  10. AIX 修 炼 之 路