当前位置: 首页 > news >正文

基于Home Assistant远程开门

基于Home Assistant远程开门

1.购买云服务器

1.1 阿里云服务器

本人使用的是阿里云服务器,其他的腾讯云,百度云都可以

如果你想要一个建议的话:

  • 推荐在打折优惠的时候买,比如双十一

  • 阿里云最近有一个飞天计划,在校大学生可以免费白嫖七个月

1.2购买服务器

地址:阿里云-计算,为了无法计算的价值

1.3安装Ubuntu系统

1.4去控制台

找到自己的实例可以重装系统,重装成Ubuntu系统就行带LTS,就表示会更新,有售后的意思

如果你在买服务器的时候就选了Ubuntu系统那就不用重装

1.5 改密码

还是去到控制台,改自己实例的密码

1.6 验证服务器是否在工作

win+R打开命令框,ping 自己的公网地址,返回有数据说明服务器在运行中,那串数据显示的是你ping的电脑和服务器传输一次的时间

2.安装宝塔

宝塔你可以理解为Linux的一个应用商店

2.1 安装宝塔的命令
wget -O install.sh https://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh ed8484bec
2.2 拷贝宝塔的一些访问网站
外网面板地址: https://101.43.125.129:23121/4a239910
内网面板地址: https://10.0.4.7:23121/4a239910
username: uhp4t5w6
password: d65e898b
If you cannot access the panel,
release the following panel port [23121] in the security group
若无法访问面板,请检查防火墙/安全组是否有放行面板[23121]端口
因已开启面板自签证书,访问面板会提示不匹配证书,请参考以下链接配置证书
https://www.bt.cn/bbs/thread-105443-1-1.html
2.3 防火墙

我们通过https://101.43.125.129:23121/4a239910访问安装在服务器中的宝塔,在这过程中,有一道防火墙在中间,他就是用来隔绝

不认识的ip端口号进行访问服务器

我们去阿里云->控制台->安全组添加我们访问服务器的端口号,就可以了

2.4 访问宝塔

通过安装时候返回的网站 https://101.43.125.129:23121/4a239910进行访问

3.安装Docker

Docker通俗来讲就是虚拟机,官话就是容器,比如VMware在电脑里面在安装一台电脑

3.1 安装Docker

两种方式:

  • 通过命令行下载

  • 在宝塔里面进行下载

 

4.安装Home Assistant

Home Assistant是一款智能家居自动化的系统,可以接入各种设备,各种控制

4.1使用Docker安装 HA

安装HA有很多种方法,比如树莓派,电脑都可以安装,因为我们HA到时候是7x24一直工作的,我们就安装在服务器上

HA镜像:homeassistant/home-assistant:latest


 

4.2创建一个文件夹存储HA数据

mkdir /home/lijianhua/homeassistant-config

4.3把HA加入到容器

sudo docker run -d --name="homeassistant-v1" -v /home/lijianhua/homeassistant-config:/config -p 8123:8123 homeassistant/home-assistant:latest

  • docker run:创建一个新的容器(虚拟机)

  • -d:表示后台运行,通俗讲就是它在运行,终端看不到它

  • --name="homeassistant-v1":给这个新的运行的虚拟机(容器)命名为homeassistant-v1

  • -v xxxx:yyyy:xxxx部分就是你Ubuntu电脑的真实路径,yyyy就是运行的新的虚拟机的路径。这句话翻译成大白话:让Ubuntu电脑的xxxx文件夹与新的虚拟机的yyyy文件夹是同一个文件夹,它们俩共享

  • -p 8123:8123:将Ubuntu电脑的8123端口(第1个)与虚拟机的端口8123(第2个)做映射,大白话:就是访问Ubuntu的8123端口的请求都会转发给虚拟机的8123端口

  • homeassistant/home-assistant:latest:表示要用的哪个docker 镜像

4.4设置防火墙

把8123加入到安全组

4.5 访问HA
http://101.43.128.129:8123/

将上面的ip改为你自己Ubuntu服务器的公网ip地址即可

4.6 常用的Docker命令
指令说明
docker images查看已下载的镜像
docker rmi 镜像名称:标签名删除已下载的镜像
docker search 镜像从官方仓库(hub.docker.com)查找镜像
docker pull 镜像名称:标签名标签名默认是 latest,代表最新版本。
docker run创建容器
docker ps列出运行中的容器(运行中)
docker ps -a列出所有的容器(运行、未运行)
docker rm 容器名称删除停止的容器
docker rm -f 容器名称删除运行中的容器
docker start 容器名称启动容器
docker stop 容器名称停止容器
docker restart 容器名称重启容器
docker exec执行容器中的指令

5.安装MQTT服务器

5.1什么是mqtt

mqtt是一种协议,一种约定,基于服务端/客户端/订阅/发布的协议

5.2 安装mqtt服务器

我们的服务器并不是mqtt服务器,我们要部署一个mqtt服务器到Docker

我们采用的是EMQX这一款MQTT服务软件,官网地址如下:EMQX: 大规模分布式 MQTT 消息服务器

sudo docker pull emqx/emqx:5.0.16 //下载EMQ镜像
sudo docker run -d --name emqx -p 1883:1883 -p 8083:8083 -p 8084:8084 -p 8883:8883 -p 18083:18083 emqx/emqx:5.0.16 
//把mqtt服务器部署到docker

其中1883端口是访问这个mqtt服务器的端口

18083是网页控制端口,通过这个端口访问mqtt服务器

6.Home Assistant安装MQTT客户端

 

 

  

6.HA安装HACS

wget -O - https://get.hacs.xyz | bash -

配置步骤: 

  • 在进入配置 -> 设备和服务 

  • 点击右下角的添加集成,搜索hacs

  • 会生成一个 设备码, 暂时不要提交。

  • 打开网页https://github.com/login/device,

  • 登陆,并输入设备码

  • 点击Authorize hacs

  • 回到设备码显示页面,提交即可

未完待续

相关文章:

基于Home Assistant远程开门

基于Home Assistant远程开门 1.购买云服务器 1.1 阿里云服务器 本人使用的是阿里云服务器,其他的腾讯云,百度云都可以 如果你想要一个建议的话: 推荐在打折优惠的时候买,比如双十一 阿里云最近有一个飞天计划,在校…...

Docker相关的参数配置

Docker的配置文件/etc/docker/daemon.json中的大部分配置项如下所示 : {"allow-nondistributable-artifacts": [],"api-cors-header": "","authorization-plugins": [],"bip": "","bridge"…...

【CSS3】CSS3 2D 转换 - scale 缩放 ③ ( 使用 scale 设置制作可缩放的按钮案例 )

文章目录 一、需求分析二、代码分析三、代码示例四、执行结果 一、需求分析 设置一个 按钮 , 默认状态下显示的样式如下 : 按钮 外部 有 圆形的外边框 ;按钮 中的文本 , 水平居中对齐 , 垂直居中对齐 ; 当鼠标移动到 按钮 上之后 , 鼠标 变为 小手 样式 , 并且 按钮 以 中心位…...

Stable Diffusion教程(6) - 图片高清放大

放大后细节 修复图片损坏 显存占用 速度 批量放大 文生图放大 好 是 高 慢 否 附加功能放大 一般 否 中 快 是 图生图放大 好 是 低 慢 是 tile模型放大 非常好 是 高 快 是 通过文生图页面的高清修复 优点:放大时能添加更多细节&am…...

freeswitch 1.10.10-dev录音早期媒体卡通道的bug分析

最近编译了fs 1.10.10-dev也就是 master版本(2023年7月6日) 给几个客户升级了一下,发现非常不稳定(每天都有几个通道卡在early状态),最近才有空来分析原因。 之前跑的是1.10.8 release 版本,从来没出现过这个问题&…...

Zebec Protocol ,不止于 Web3 世界的 “Paypal”

Paypal 是传统支付领域的巨头企业,在北美支付市场占有率约为 77% 以上。从具体的业务数据看,在8月初,Paypal 公布的 2023 年第二季度财报显示,PayPal 第二季度净营收为 73 亿美元,净利润为 10.29 亿美元。虽然 Paypal …...

Gcd 2023牛客暑期多校训练营6 G

登录—专业IT笔试面试备考平台_牛客网 题目大意:给出一个集合,集合中初始有2个数x,y(x!y),每次操作可以将集合中任意两个不等的数的差放入集合或者将两个不等的数的gcd放入集合,给出一个数z,问z有没有可能出现在集合里…...

常用C++编译器推荐

本文将为大家带来的是几款简单实用的C编译器(非IDE),希望大家喜欢。 GCC(GNU Compiler Collection) 官方网站: GCC, the GNU Compiler Collection- GNU Project GCC有Windows移植版本,比较出名的就是Min…...

C++QT教程1——QT概述(下载与安装)

文章目录 1 Qt概述1.1 什么是Qt1.2 Qt的发展史1.3 Qt版本1.4 Qt的下载与安装下载地址:其实我是有点懵逼的,因为还有个qtcreator,我差点不知道下哪个。。。(qt框架比qtcreator功能更多更强大) 安装 1.5 Qt的优点1.6 QT成…...

在oracle SQL中创建返回表的函数

这是我的职责 create or replace FUNCTION split(i_str IN VARCHAR2,i_delim IN VARCHAR2 DEFAULT : ) RETURN TABLE AS BEGINRETURN SELECT trim(regexp_substr(i_str, [^||i_delim||], 1, LEVEL)) str FROM projetCONNECT BY instr(i_str, i_delim, 1, LEVEL - 1) …...

Kubernetes API Aggregation API聚合

Kubernetes API Aggregation - Kubernetes - Wiki.Shileizcc.com API 聚合机制是 Kubernetes 1.7 版本引入的特性,能够将用户扩展的 API 注册到 kube-apiserver 上,仍然通过 API Server 的 HTTP URL 对新的 API 进行访问和操作。为了实现这个机制&#…...

【雕爷学编程】Arduino动手做(184)---快餐盒盖,极低成本搭建机器人实验平台

吃完快餐粥,除了粥的味道不错之外,我对个快餐盒的圆盖子产生了兴趣,能否做个极低成本的简易机器人呢?也许只需要二十元左右 知识点:轮子(wheel) 中国词语。是用不同材料制成的圆形滚动物体。简…...

重生学c++系列第三课类和对象(上)

好的我们重生c系列的前两期已经介绍完了c祖师爷针对C语言补充的几个新功能,现在我们进入c的真正课题学习——类与对象: C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题。 比如说我们洗菜做饭&am…...

驱动开发-按键中断

编写LED灯的驱动&#xff0c;使用GPIO子系统&#xff0c;里面添加按键的中断处理 1.应用程序发送指令控制LED亮灭 2.按键1 按下&#xff0c;led1电位反转 按键2按下&#xff0c;led2电位反转 按键3 按下&#xff0c;led3电位反转 功能函数 #include<stdlib.h> #inclu…...

数据结构 | 二叉树的应用

目录 一、解析树 二、树的遍历 一、解析树 我们可以用解析树来表示现实世界中像句子或数学表达式这样的构造。 我们可以将((73)*(5-2))这样的数学表达式表示成解析树。这是完全括号表达式&#xff0c;乘法的优先级高于加法和减法&#xff0c;但因为有括号&#xff0c;所以在…...

python:卡尔曼和贝叶斯滤波器

本文分享一个Filerpy的说明文档和代码示例文档&#xff0c;有关于 Python 中的卡尔曼和贝叶斯滤波器。该方法可以应用于气象遥感等领域。 说明文档&#xff1a;https://filterpy.readthedocs.io/en/latest/kalman/KalmanFilter.html 参考代码链接&#xff1a;https://nbviewer.…...

走进 Go 语言基础语法 | 青训营 (1)

Powered by:NEFU AB-IN 文章目录 走进 Go 语言基础语法 | 青训营 (1)代码注释代码模板 走进 Go 语言基础语法 | 青训营 (1) 代码注释 /** Author: NEFU AB-IN* Date: 2023-08-06 09:44:15* FilePath: \GoTest\a.go* LastEditTime: 2023-08-06 11:00:45*/ package mainimport (&…...

基于边缘无线协同感知的低功耗物联网LPIOT技术:赋能智慧园区方案以及数字工厂领域

回到2000年左右&#xff0c;物联网的底层技术支撑还是“ZigBee”&#xff0c;虽然当时ZigBee的终端功耗指标其实也并不庞大&#xff0c;但是&#xff0c;“拓扑复杂导致工程实施难度大”、“网络规模小导致的整体效率低下”都成为限制其发展的主要因素。 LPWAN&#xff0c;新一…...

【《快速构建AI应用——AWS无服务器AI应用实战》——基于云的解决方案快速完成人工智能项目的指南】

基于云的人工智能服务可以自动完成客户服务、数据分析和财务报告等领域的各种劳动密集型任务。其秘诀在于运用预先构建的工具&#xff0c;例如用于图像分析的Amazon Rekognition或用于自然语言处理的AWS Comprehend。这样&#xff0c;就无须创建昂贵的定制软件系统。 《快速构…...

vue运行在IE浏览器空白报错SCRIPT1006: 缺少‘)‘ -【vue兼容IE篇】

其他浏览器均正常&#xff0c;但是切换ie模式&#xff0c;打开空白&#xff0c;F12打开报错缺少‘)‘ &#xff0c;如下图 在搜狗浏览器下点开报错&#xff1a;定格在crypto-js处 解决&#xff1a; 步骤一&#xff1a;使用npm安装babel-polyfill 依赖&#xff08;已安装了可忽…...

python打卡day49

知识点回顾&#xff1a; 通道注意力模块复习空间注意力模块CBAM的定义 作业&#xff1a;尝试对今天的模型检查参数数目&#xff0c;并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...

React Native 开发环境搭建(全平台详解)

React Native 开发环境搭建&#xff08;全平台详解&#xff09; 在开始使用 React Native 开发移动应用之前&#xff0c;正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南&#xff0c;涵盖 macOS 和 Windows 平台的配置步骤&#xff0c;如何在 Android 和 iOS…...

【AI学习】三、AI算法中的向量

在人工智能&#xff08;AI&#xff09;算法中&#xff0c;向量&#xff08;Vector&#xff09;是一种将现实世界中的数据&#xff08;如图像、文本、音频等&#xff09;转化为计算机可处理的数值型特征表示的工具。它是连接人类认知&#xff08;如语义、视觉特征&#xff09;与…...

C++中string流知识详解和示例

一、概览与类体系 C 提供三种基于内存字符串的流&#xff0c;定义在 <sstream> 中&#xff1a; std::istringstream&#xff1a;输入流&#xff0c;从已有字符串中读取并解析。std::ostringstream&#xff1a;输出流&#xff0c;向内部缓冲区写入内容&#xff0c;最终取…...

Java入门学习详细版(一)

大家好&#xff0c;Java 学习是一个系统学习的过程&#xff0c;核心原则就是“理论 实践 坚持”&#xff0c;并且需循序渐进&#xff0c;不可过于着急&#xff0c;本篇文章推出的这份详细入门学习资料将带大家从零基础开始&#xff0c;逐步掌握 Java 的核心概念和编程技能。 …...

基于matlab策略迭代和值迭代法的动态规划

经典的基于策略迭代和值迭代法的动态规划matlab代码&#xff0c;实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...

docker 部署发现spring.profiles.active 问题

报错&#xff1a; org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...

淘宝扭蛋机小程序系统开发:打造互动性强的购物平台

淘宝扭蛋机小程序系统的开发&#xff0c;旨在打造一个互动性强的购物平台&#xff0c;让用户在购物的同时&#xff0c;能够享受到更多的乐趣和惊喜。 淘宝扭蛋机小程序系统拥有丰富的互动功能。用户可以通过虚拟摇杆操作扭蛋机&#xff0c;实现旋转、抽拉等动作&#xff0c;增…...

Linux中《基础IO》详细介绍

目录 理解"文件"狭义理解广义理解文件操作的归类认知系统角度文件类别 回顾C文件接口打开文件写文件读文件稍作修改&#xff0c;实现简单cat命令 输出信息到显示器&#xff0c;你有哪些方法stdin & stdout & stderr打开文件的方式 系统⽂件I/O⼀种传递标志位…...

VisualXML全新升级 | 新增数据库编辑功能

VisualXML是一个功能强大的网络总线设计工具&#xff0c;专注于简化汽车电子系统中复杂的网络数据设计操作。它支持多种主流总线网络格式的数据编辑&#xff08;如DBC、LDF、ARXML、HEX等&#xff09;&#xff0c;并能够基于Excel表格的方式生成和转换多种数据库文件。由此&…...