Fastbee物联网项目新手快速入门

一,前提条件

后端环境准备如下:

  1. 正式环境推荐硬件资源最低要求4c8G,硬盘40G。
  2. JDK 1.8.0_2xx (需要小版本号大于200) 。
  3. Maven3.6.3。(IDEA启动时使用IDEA默认自带的版本即可)。

启动fastbee之前,请先确定已经安装好以下基础服务:

开发者根据自身环境情况选择参考IDEA本地调试或Docker远程部署。

  1. Redis 5.x
  2. Mysql 5.7 +
  3. EMQX5.0+ or EMQX4.0+
  4. TDengine =2.6(可选)

前端环境准备如下

  1. NodeJs >= 12
  2. Nginx 1.24.0

二,项目部署&运行

2.1 获取源码

git clone https://gitee.com/zhuangpengli/FastBee.git

2.2 使用IDEA打开后端源码

  1. 打开IDEA,点击File > Open,选择项目中springboot目录,等待依赖下载完成。
  2. 点击File > Project Structure > Project, 配置SDK为jdk1.8.200+ ,Project language level为8。

2.3 IDEA启动后端

2.3.1 配置文件及常见修改项

配置文件地址:springboot/fastbee-admin/src/main/resources/application.yml

不同启动环境有对应的配置文件:分为dev(开发环境)和prod(生产环境)

# Spring配置
spring:# 环境配置,dev=开发环境,prod=生产环境profiles:active: dev               # 环境配置,dev=开发环境,prod=生产环境

以开发环境(application-dev.yml)为例常见修改项说明

# 省略了部分配置项
spring:datasource:druid:# 修改主数据库host地址,数据表名,账号密码等master:url: jdbc:mysql://localhost/fastbee?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8username: rootpassword: fastbee# 默认不启用TDengine,true=启用,false=不启用# 启用时,修改host地址,数据表名,账号密码等tdengine-server:enabled: false     url: jdbc:TAOS://fastbee:6030/fastbee_log?timezone=Asia/Beijing&charset=utf-8username: rootpassword: taosdatadbName: fastbee_log# redis 配置redis:host: localhost                         # 地址port: 6379                              # 端口,默认为6379database: 1                             # 数据库索引password: fastbee                       # 密码# mqtt 配置mqtt:username: fastbee                       # 账号password: fastbee                       # 密码host-url: tcp://localhost:1883          # mqtt连接tcp地址# 日志配置 根据需要开启不同等级
logging:level:com.fastbee: debugorg.springframework: warn

修改配置文件后,在Maven窗口勾选跳过测试按钮,如下图:

然后执行Maven clean(清理),Maven compile(编译),Maven package(打包)命令,

并等待编译完成,如下图:

注意!!!

使用JDK1.8的时候,请勿在Maven窗口内勾选jdk11的profile选项!

执行Maven clean和Maven compile命令时需要停止项目的运行,否则会出现编译失败或文件被进程占用等问题。

2.3.2 启动应用

启动前可以先用docker脚本,把使用到的中间件先跑起来。

右键FastBeeApplication.java文件执行Run/Debug FastBeeApplication,如下图

2.4 使用IDEA打开前端源码

  1. 打开IDEA,点击File > Open,选择项目中vue目录。
  2. 修改配置
  3. 执行npm install --registry=https://registry.npmmirror.com安装依赖
  4. 执行npm run dev运行前端项目

2.3.1 配置文件及常见修改项

配置文件地址:开发环境vue/.env.development,生产环境vue/.env.production

以开发环境(.env.development)为例常见修改项说明

# 页面标题
VUE_APP_TITLE = FastBee物联网系统# 开发环境配置
ENV = 'development'# 开发环境
VUE_APP_BASE_API = '/dev-api'# 路由懒加载
VUE_CLI_BABEL_TRANSPILE_MODULES = true# 后端接口地址
VUE_APP_SERVER_API_URL = 'http://localhost:8080'# Mqtt消息服务器连接地址
VUE_APP_MQTT_SERVER_URL = 'ws://localhost:8083/mqtt'# 百度地图AK
VUE_APP_BAI_DU_AK = 'nAtaBg9FYzav6c8P9rF9qzsWZfT8O0PD'

2.5 在服务器上用docker部署项目

2.5.1 下载 docker部署项目

   git clone https://gitee.com/zhuangpengli/fastbee-docker.gitcd fastbee-dockercp -rf ./data /var

2.5.2 编译java包

   git clone https://gitee.com/zhuangpengli/FastBee.gitcd FastBee/springbootmvn clean package -Dmaven.test.skip=truecp ./fastbee-admin/target/fastbee-admin.jar /var/data/java/fastbee-admin.jar

2.5.3 打包前端目录

   git clone https://gitee.com/zhuangpengli/FastBee.gitcd FastBee/vuenpm installnpm run build:prodcp -rf ./dist/* /var/data/vue

2.5.4 启动项目

   cd /var/datasetenforce 0chmod 777 -R /var/data #使用netty版本mqtt broker 输入该命令:sudo cp -rf docker-compose-netty.yml docker-compose.yml#使用emqx直接启动docker-compose up -d

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/653114.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

课时6:编程语言逻辑

1.2.2 编程语言逻辑 学习目标 这一节,我们从 语言分类、编程逻辑、小结 三个方面来学习。 语言分类 语言分类 低级编程语言:机器:- 二进制的0和1的序列,称为机器指令。- 一般人看不懂汇编:- 用一些助记符号替代机…

LPC804开发(4.ctimer使用)

1.前言 昨天晚上画完板子,还剩点时间就再翻了翻手册,大致清楚了时钟树的运行,顺带搞清楚了定时的使用,那就出一份教程吧。 如果各位在此之前没有接触过LPC单片机,还是建议先把程序直接贴进自己的项目,稍微…

“拔叔”的新片又杀疯了!

近,“拔叔”麦斯米科尔斯的新片登上口碑榜。 该片曾入围去年威尼斯金狮奖,上映后颇受好评,目前豆瓣评分8.2分。 将代表丹麦角逐2024年奥斯卡最佳外语片,目前已入15强。 作为“丹麦最性感的男人”,拔叔的实力不容小觑。…

Logistics 逻辑回归概念

1. sigmoid函数 逻辑回归算法的拟合函数,叫做sigmoid函数: 函数图像如下(百度图片搜到的图): sigmoid函数是一个s形曲线,就像是阶跃函数的温和版,阶跃函数在0和1之间是突然的起跳,…

std::for_each

std::for_each 是 C STL 中的标准函数之一&#xff0c;用于对指定的容器或序列中的元素执行指定的操作。该函数的头文件为 <algorithm>&#xff0c;定义在 namespace std 中&#xff0c;因此需要包含该头文件才能使用该函数。 std::for_each 函数是 C STL 中自 C98 就开…

【JavaSE篇】——类和对象

目录 &#x1f393;类定义和使用 &#x1f393;简单认识类 &#x1f6a9;类的定义格式 ❗注意事项 &#x1f393;类的实例化 &#x1f6a9;什么是实例化 &#x1f6a9;类和对象的说明 &#x1f393;this引用 &#x1f6a9;为什么要有this引用 &#x1f6a9;什么是thi…

【JavaScript 基础入门】02 JavaScrip 详细介绍

JavaScrip 详细介绍 目录 JavaScrip 详细介绍1. JavaScript 是什么2. JavaScript的作用3. HTML/CSS/JS 的关系4. 浏览器执行 JS 简介5. JavaScript 的组成6. JavaScript 的特点 1. JavaScript 是什么 JavaScript&#xff0c;通常缩写为 JS&#xff0c;是一种高级的&#xff0c;…

分布式技术浅见之复制

分布式技术浅见之复制 前言一、何为复制&#xff1f;1.1 主从复制和无主从复制1.2 同步复制与异步复制1.3 来点栗子1.3.1 Redis1.3.2 Mysql1.3.3 Mongo 二、复制是如何实现的&#xff1f;2.1 复制的过程2.2 来点栗子2.2.1 Redis2.2.2 Mysql2.2.3 Mongo 2.2 复制的实现方式2.4 举…

OpenHarmony—不支持解构赋值

规则&#xff1a;arkts-no-destruct-assignment 级别&#xff1a;错误 ArkTS不支持解构赋值。可使用其他替代方法&#xff0c;例如&#xff0c;使用临时变量。 TypeScript let [one, two] [1, 2]; // 此处需要分号 [one, two] [two, one];let head, tail [head, ...tail]…

MySQL十部曲之六:数据操作语句(DML)

文章目录 前言语法约定DELETEINSERTSELECT查询列表SELECT 选项子句FROMWHEREORDER BYGROUP BYHAVINGWINDOWLIMITFOR SELECT ... INTO连接查询CROSS JOIN和INNER JOINON和USINGOUTER JOINNATURE JOIN 子查询标量子查询使用子查询进行比较带有ANY、IN或SOME的子查询带有ALL的子查…

DETR解读,将Transformer带入CV

论文出处 [2005.12872] End-to-End Object Detection with Transformers (arxiv.org) 一个前置知识 匈牙利算法&#xff1a;来源于二部图匹配&#xff0c;计算最小或最大匹配 算法操作&#xff1a;在n*n的矩阵中 减去行列最小值&#xff0c;更新矩阵&#xff08;此时行或者…

搜维尔科技:【简报】元宇宙数字人赛道,优秀作品赏析《大福太郎》

这次采用亮眼的浅粉做为发色&#xff0c;为了贴合她小警察的身分 给了她一顶特制的警帽&#xff0c;上面有大福的荧光蓝叶片作为标 志&#xff0c;而在配件及裙子上也加入了许多科技元素的小巧思。 学校&#xff1a; 朝阳科技大学&#xff08;台湾&#xff09; 选手&#xff…

消息中间件之RocketMQ(二)

RocketMQ支持的消息类型 了解之前&#xff0c;首先要熟悉RocketMQ中的组件架构设计 1.顺序消息 将同一个订单(即具有相同的orderId)的消息按状态先后顺序消费的&#xff0c;所以消息生产者调用send方法发送时需要传入MessageQueueSelector接口的,实现类&#xff0c;将order…

【GitHub项目推荐--开源PDF 工具】【转载】

12 年历史的 PDF 工具开源了 最近在整理 PDF 的时候&#xff0c;有一些需求普通的 PDF 编辑器没办法满足&#xff0c;比如 PDF 批量合并、编辑等。 于是&#xff0c;我就去 GitHub 上看一看有没有现成的轮子&#xff0c;发现了这个 PDF 神器「PDF 补丁丁」&#xff0c;让人惊…

Vue+OpenLayers7入门到实战:快速搭建Vue+OpenLayers7地图脚手架项目。从零开始构建Vue项目并整合OpenLayers7.5.2

返回《Vue+OpenLayers7》专栏目录:Vue+OpenLayers7 前言 本章针对Vue初学者,对Vue不熟悉,甚至还不会Vue的入门学生读者。 本章会详细讲解从NodeJS环境到npm环境的各个步骤,再到使用vue-cli脚手架快速生成项目,以及添加OpenLayers7地图库依赖,编写简单的xyz高德地图显示…

RuoYi-Vue前后端分离后台开发框架运行详细教程

一、官网下载代码 RuoYi-Vue是一款基于SpringBootVue的前后端分离极速后台开发框架。 若依官网&#xff1a;http://ruoyi.vip演示地址&#xff1a;http://vue.ruoyi.vip代码下载&#xff1a;https://gitee.com/y_project/RuoYi-Vue 下载之后解压&#xff0c;ruoyi-ui是前端代…

opencv学习二值分析

内容来源于《opencv4应用开发入门、进阶与工程化实践》 二值分析&#xff1a; 常见的二值化方法&#xff1a; 基于全局阈值&#xff08;threshold&#xff09;得到的二值图像&#xff1b;基于自适应阈值&#xff08;adaptiveThreshold&#xff09;得到的二值图像&#xff1…

JavaScript高级:构造函数

1 引言 构造函数是一种特殊的函数&#xff0c;主要用来初始化对象&#xff1b;常规的 {...} 语法允许创建一个对象&#xff0c;但是通过构造函数可以快速创建多个类似的对象 2 约定 1. 命名以大写字母开头&#xff1b; 2. 它们只能由 “new” 操作符来执行 <script>//…

【C++】filesystem

文章目录 1. 基本配置1.1. VS2019修改C标准1.2. filesystem的引入 2. 日常使用2.1. 认识2.2. 控制台输入路径并对路径进行基本操作 <filesystem>是C 17标准引入的标准库&#xff0c;主要用于处理文件系统的目录和文件操作&#xff0c;接下来总结该库的基本配置和日常使用…

BIGVGAN: A UNIVERSAL NEURAL VOCODER WITHLARGE-SCALE TRAINING——TTS论文阅读

笔记地址&#xff1a;https://flowus.cn/share/a16a61b3-fcd0-4e0e-be5a-22ba641c6792 【FlowUs 息流】Bigvgan 论文地址&#xff1a; BigVGAN: A Universal Neural Vocoder with Large-Scale Training Abstract 背景&#xff1a; 最近基于生成对抗网络&#xff08;GAN&am…