启动服务(中间件)
大约 2 分钟quickstartcode
注意事项
- 本文档仅用于快速构建开发环境,生产环境请严格按照安全等级构建,切勿使用默认密码
- 更多具体中间件服务生产的环境配置请参考对应中间件的官方文档
一、 中间件运行
1. docker启动mysql8并挂载文件(关闭大小写敏感)
注意事项
- 服务启动成功后打开数据库,创建数据库名
bladex_iot
(字符集采用utf8mb4
) - 导入
BladeX-Links
工程根目录下/doc/sql
文件夹的SQL脚本(顺序为:bladex.mysql.sys.create.sql
->bladex.mysql.iot.create.sql
->bladex.mysql.iot.ext.create.sql
)
docker run \
--name mysql8 -d -p 3306:3306 \
-v /docker/data/mysql8/data:/var/lib/mysql \
-v /docker/data/mysql8/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=设定你的密码 \
--privileged=true \
mysql:8.3.0 \
--lower_case_table_names=1
2. docker启动redis(注意生产环境必须关闭端口映射并且设置密码)
docker run --name redis -d -p 6379:6379 redis:7.2.5
3. docker启动tdengine并挂载数据(默认的时序库)
docker run -d \
--name tdengine \
-p 6030-6049:6030-6049 \
-p 6030-6049:6030-6049/udp \
-p 6060:6060 \
-v /docker/data/tdengine/data:/var/lib/taos \
-v /docker/data/tdengine/log:/var/log/taos \
tdengine/tdengine
4. docker启动influxdb并挂载数据(按需启动)
docker run -d \
--name influxdb \
-p 8086:8086 \
-v /docker/data/influxdb:/var/lib/influxdb \
-e INFLUXDB_DB=links \
-e INFLUXDB_HTTP_AUTH_ENABLED=true \
-e INFLUXDB_ADMIN_USER=admin \
-e INFLUXDB_ADMIN_PASSWORD=links \
influxdb:1.8.10
5. docker启动influxdb2并挂载数据(按需启动)(启动后访问ip:8086,控制台创建账号密码与库,并申请token进行配置)
docker run -d \
--name influxdb2 \
-p 8086:8086 \
-v /docker/data/influxdb:/var/lib/influxdb \
influxdb
6. docker启动iotdb并挂载数据(按需启动)
docker run -d \
--name iotdb \
-p 6667:6667 \
-p 42424:42424 \
-p 5555:5555 \
-v /docker/data/iotdb/data:/iotdb/data \
-v /docker/data/iotdb/logs:/iotdb/logs \
apache/iotdb
7. docker启动minio并挂载数据(采用阿里云等云平台oss则无需执行)
docker run --name minio -d -p 9000:9000 \
-e "MINIO_ACCESS_KEY=bladexadmin" \
-e "MINIO_SECRET_KEY=bladexadmin" \
-v /docker/data/minio/data:/data \
minio/minio:RELEASE.2021-04-22T15-44-28Z.hotfix.56647434e server /data --address '0.0.0.0:9000'
8. docker启动kafka并挂载数据(仅在broker集群模式下需要)
docker run -d \
--name kafka \
-p 9092:9092 \
-e KAFKA_CFG_NODE_ID=1 \
-e KAFKA_CFG_PROCESS_ROLES=controller,broker \
-e KAFKA_CFG_LISTENERS=PLAINTEXT://:9092,CONTROLLER://:9093 \
-e KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://localhost:9092 \
-e KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT \
-e KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=1@localhost:9093 \
-e KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER \
-e ALLOW_PLAINTEXT_LISTENER=yes \
-v /docker/data/kafka:/data \
bitnami/kafka:3.9.0