在Ubuntu20.04.06中部署IoTSharp-2024.01.18

1.环境搭建

1.1Ubuntu环境初始化

更新root密码:sudo passwd root

su至root权限下

安装ssh服务:apt install openssh-server

更新源:apt update

apt upgrade

安装网络工具:apt install net-tools

现在可以查看IP:ifconfig

安装gcc:apt install build-essential

安装pip3:1)apt install python3-pip

2)pip3 install --upgrade pip

更新pip源:1)根目录创建.pip文件:mkdir ~/.pip

2)创建文件pip.conf:touch .pip/pip.conf

3)写入以下内容:

[global]
index-url =https://pypi.tuna.tsinghua.edu.cn/simple
trusted-host = pypi.tuna.tsinghua.edu.cn

安装curl:apt install curl wget

安装vim:apt install vim

安装git:apt install git

设置共享文件夹

1.2编译相关包

Node.js: apt install nodejs npm

node -v
npm -v

Sqlite3:  apt install sqlite3 libsqlite3-dev

Telemetry数据存储PostgreSQL:

apt install postgresql postgresql-contrib
#查看数据库状态
systemctl status postgresql

#切换到postgresql用户
sudo -u postgres psql

#创建数据库
CREATE DATABASE IoTSharp;

#授予用户至该数据库的权限
GRANT ALL PRIVILEGES ON DATABASE IoTSharp TO postgresql;

#退出数据库
\q

Influxdb时序数据库:

#获取influx2.x下载地址
wget https://dl.influxdata.com/influxdb/releases/influxdb2-2.0.7-amd64.deb

#解包安装
dpkg -i influxdb2-2.0.7-amd64.deb

#查看状态
systemctl status influxdb

Influx数据库服务开启后,进入http://localhost:8086浏览器页面,创建org(组织),用户,数据库(IoTSharp)。选择data,tokens,复制这个数据库的token到appsetting.development.json文件,修改


    "TelemetryStorage": "http://127.0.0.1:8086/?org=your_org&bucket=your_bucket&token=your_token&&latest=-72h",

保存后退出。

安装.NET:安装 .NET 之前,运行以下命令,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加包存储库。


# 1. 打开终端。

# 2. 执行以下命令添加 Microsoft 的签名密钥:
wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb

# 3. 安装 apt-transport-https 以支持通过 HTTPS 访问仓库:
sudo apt-get install -y apt-transport-https

# 4. 更新包列表:
sudo apt-get update

# 5. 安装 .NET Core SDK :
sudo apt-get install -y dotnet-sdk-8.0

# 6. 安装 .NET runtime :
apt-get install -y aspnetcore-runtime-8.0
apt-get install -y dotnet-runtime-8.0

# 7. 验证 .NET SDK 是否安装成功:
dotnet --version

2.IoSharp获取

在终端中使用下述URL进行克隆。例如,对于HTTPS:

git clone https://gitee.com/iotsharp/IoTSharp.git

或对于SSH:

git clone git@gitee.com:iotsharp/IoTSharp.git

3.部署运行

3.1.appsetting设置

进入IoSHarp目录,打开appsetting.Development.json,进行如下修改:“TelemetryStorage”

{
  "Logging": {
    "LogLevel": {
      "Default": "Information"
    }
  },
  "ConnectionStrings": {
    "IoTSharp": "Data Source=.data/IoTSharp.db",
    "TelemetryStorage": "Data Source=.data/IoTSharp.db"
  },
  "DataBase": "Sqlite",
  "JwtKey": "kissmekissmekissmekissmekissmekissmekissmekissmekissmekissmekissmekissmekissmekissmekissmekissme",
  "JwtExpireHours": 24,
  "JwtIssuer": "IoTSharp.Net",
  "JwtAudience": "IoTSharp.Net",
  "EventBusStore": "InMemory",
  "EventBusMQ": "InMemory",
  "TelemetryStorage": "Sqlite"
}

完成后关闭文件,在终端输入以下内容安装 Entity Framework Core SQLite 提供程序:

dotnet add package Microsoft.EntityFrameworkCore.SQLite

执行数据库迁移以创建 SQLite 数据库

dotnet tool restore
dotnet ef database update

3.2.ClientApp部署

# 进入项目
cd ClientApp

# 安装依赖
npm install  --legacy-peer-deps
#如果下载失败就换npm源,换成淘宝,怎么换百度

# 运行项目
npm run dev

# 打包发布
npm run build

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值