fastybird / devices-node
FastyBird 物联网设备节点,用于设备存储和基本逻辑服务
Requires
- php: >=7.4.0
- cweagans/composer-patches: ^1.6
- fastybird/bootstrap: @dev
- fastybird/couchdb-storage-plugin: @dev
- fastybird/database: @dev
- fastybird/devices-module: @dev
- fastybird/json-api: @dev
- fastybird/modules-metadata: @dev
- fastybird/mqtt-plugin: @dev
- fastybird/rabbitmq-plugin: @dev
- fastybird/simple-auth: @dev
- fastybird/vernemq-auth-plugin: 9999999-dev
- fastybird/web-server: @dev
Requires (Dev)
- mockery/mockery: ^1.3
- ninjify/nunjuck: ^0.3
- ninjify/qa: ^0.10
- pds/skeleton: ~1.0
- phpstan/extension-installer: ^1.0
- phpstan/phpstan: ^0.12
- phpstan/phpstan-deprecation-rules: ^0.12
- phpstan/phpstan-doctrine: ^0.12
- phpstan/phpstan-nette: ^0.12
- tracy/tracy: 2.7
This package is auto-updated.
Last update: 2024-09-17 19:49:29 UTC
README
什么是 FastyBird 设备节点?
设备节点是一个核心微服务,用于管理所有连接的设备,管理基本设备逻辑并将其暴露给客户端。
FastyBird 设备节点是一个 Apache2 许可证的分布式微服务,使用 PHP 和 Nette 框架 开发。
要求
FastyBird 设备节点针对 PHP 7.4 和 ReactPHP http 0.8 事件驱动、流式纯文本 HTTP 服务器和 RabbitMQ 3.7 消息代理进行了测试。
入门
注意:如果您不想手动安装,请尝试 Docker 镜像
安装 fastybird/devices-node 的最佳方式是使用 Composer。如果您还没有 Composer,请按照说明进行下载。然后使用以下命令:
$ composer create-project --no-dev fastybird/devices-node path/to/install
$ cd path/to/install
所需的所有内容将安装到提供的文件夹 path/to/install
中。
此微服务有几个控制台命令。
HTTP 服务器
$ vendor/bin/fb-console fb:web-server:start
此命令用于启动内置的 web 服务器,该服务器监听来自客户端的传入 http api 请求消息,并监听来自其他微服务的交换总线上的新数据。
使用 Docker 安装
Docker 镜像:fastybird/devices-node
使用 Docker Hub 镜像
$ docker run -d -it --name devices fastybird/devices-node:latest
生成本地镜像
$ docker build --tag=devices-node .
$ docker run -d -it --name devices-node devices-node
配置
此微服务已预配置为默认连接,但您的基础设施可能不同。
配置可以通过环境变量进行设置
注意:如果您不使用 Docker 镜像或无法配置环境变量,您可以编辑配置文件
./config/default.neon
初始化
此微服务使用数据库,需要一些初始数据被插入其中。这可以通过 shell 命令完成。
$ vendor/bin/fb-console fb:initialize
此控制台命令是交互式的,并将要求输入所有所需信息。
在此步骤之后,可以使用 服务器命令 启动微服务。
反馈
使用 问题跟踪器 报告错误,或通过 邮件 或 推文 向我们提出任何可以改进项目的想法。
感谢您进行测试、报告和贡献。
更新日志
有关发布信息,请检查 发布页面
维护者
主页 https://www.fastybird.com 和仓库 https://github.com/fastybird/devices-node。