You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
jetlinks-doc/iot-docs/install-deployment/start-with-source.md

175 lines
4.6 KiB

# 使用源码启动JetLinks
## 系统环境
启动jetlinks之前,请先确定已经安装好以下环境:
1. JDK 1.8.0_2xx (需要小版本号大于200) [下载jdk](https://adoptopenjdk.net/releases.html?variant=openjdk8&jvmVariant=hotspot)
2. Redis 5.x
3. PostgreSQL 11 或者 mysql 5.7 +
4. ElasticSearch 6.8 + [下载](https://www.elastic.co/cn/downloads/elasticsearch) ,也可以直接[使用内嵌ElasticSearch](#内嵌elasticsearch启动).
::: tip 注意
如果你是linux或者macOS系统,或者是windows10. 推荐[使用docker安装所需环境](./ide-docker-start.md)
项目启动后会自动创建表结构,但是数据库需要手动创建。
:::
## 下载源代码
建议使用`git clone`下载源代码,注意代码分支,`master`为最新的开发分支.其他分支为对应的版本.
```bash
$ git clone https://github.com/jetlinks/jetlinks-community.git
$ cd jetlinks-community
```
## 配置文件
配置文件地址:`jetlinks-standalone/src/main/resources/application.yml`
常见配置说明
```yml
spring:
redis:
host: 127.0.0.1 # redis配置
port: 6379
r2dbc:
url: r2dbc:postgresql://127.0.0.1:5432/jetlinks # 数据库postgresql数据库配置
#url: r2dbc:mysql://127.0.0.1:3306/jetlinks # 支持切换到mysql数据库
username: postgres # 数据库用户名
password: jetlinks # 数据库密码
easyorm:
default-schema: public # 数据库名 修改了数据库请修改这里
dialect: postgres # 数据库方言,支持 postgres,mysql,h2
elasticsearch:
embedded:
enabled: false # 为true时使用内嵌的elasticsearch
data-path: ./data/elasticsearch
port: 9200
host: 0.0.0.0
client:
host: 127.0.0.1 # elasticsearch
port: 9200
hsweb:
file:
upload:
static-file-path: ./static/upload # 上传的文件存储路径
static-location: http://127.0.0.1:${server.port}/upload # 上传文件后,将使用此地址来访问文件,在部署到服务器后需要修改这个地址为服务器的ip.
```
::: tip 说明
除了修改配置文件以外,还可以通过修改环境变量或者启动参数来修改配置,比如:
```bash
java -jar ./jetlinks-standalone/target/jetlinks-standalone.jar --spring.elasticsearch.embedded.enabled=true
```
:::
## 使用命令行启动
如果相关环境的ip不是本地,或者端口不是默认端口.请先修改配置文件.
linux或者macOS环境下打包:
```bash
$ ./mvnw clean package -Dmaven.test.skip=true
```
windows 环境下打包
```bash
$ mvnw.cmd clean package '-Dmaven.test.skip=true'
```
启动
```bash
$ java -jar ./jetlinks-standalone/target/jetlinks-standalone.jar
```
## 导入IDEA启动
Idea请先安装`lombok`插件.
1. 打开`IDEA`,点击`file-open`,选择项目目录,等待依赖下载完成.
2. 点击`file-Project Structure-Project`,配置SDK为jdk1.8,`Project language level`为`8`.
3. 打开`jetlinks-standalone/src/main/java/org...../JetLinksApplication.java`,启动main方法即可.
::: tip 注意
如果依赖无法下载,请确定`maven`配置正确,请勿在settings.xml中配置全局仓库私服.
:::
## 使用内嵌ElasticSearch
在硬件条件较差时,可以使用内嵌的ElasticSearch,不用单独安装。
修改配置文件即可
```yml
elasticsearch:
embedded:
enabled: true # 为true时使用内嵌的elasticsearch
```
## 启动前端
JetLinks 是前后端分离的.启动完后端服务后,还需要启动前端.
::: tip 提示
如果本地不需要修改前端代码,并且本地有docker环境,建议使用docker启动前端.
```bash
docker run -it --rm -p 9000:80 -e "API_BASE_PATH=http://host.docker.internal:8844/" registry.cn-shenzhen.aliyuncs.com/jetlinks/jetlinks-ui-antd:1.9.0
```
http://host.docker.internal:8844/ 为后台服务的地址,请根据情况修改.
:::
准备环境:
1. nodeJs v12.xx
2. npm v6.xx
下载前端代码:
```bash
$ git clone https://github.com/jetlinks/jetlinks-ui-antd.git
$ cd jetlinks-ui-antd
```
修改后台接口地址:
后台接口配置文件地址:config/proxy.ts:
```js
/**
* 在生产环境 代理是无法生效的,所以这里没有生产环境的配置
*/
export default {
dev: {
'/jetlinks': {
target: '后台地址',
changeOrigin: true,
pathRewrite: { '^/jetlinks': '' },
},
},
test: {
'/jetlinks': {
target: '后台地址',
changeOrigin: true,
pathRewrite: { '^/jetlinks': '' },
},
},
pre: {
'/jetlinks': {
target: '后台地址',
changeOrigin: true,
pathRewrite: { '^/jetlinks': '' },
},
},
};
```
启动:
```bash
$ cd jetlinks-ui-antd
$ npm install
$ npm start
```
启动成功后,访问: http://localhost:8000 即可.