项目启动【dev环境】
你好呀,我的老朋友!我是老寇,欢迎来到老寇云平台!
# 环境搭建
修改win系统上面的hosts(如有需要,请自行更换IP,比如说使用云服务,请更换成云服务器IP)【目录位置:C:\Windows\System32\drivers\etc\hosts】
127.0.0.1 kafka
127.0.0.1 redis
127.0.0.1 postgresql
127.0.0.1 nginx
127.0.0.1 elasticsearch
127.0.0.1 nacos
127.0.0.1 gateway
127.0.0.1 tdengine
127.0.0.1 job
127.0.0.1 auth
127.0.0.1 admin
127.0.0.1 jaeger-collector
127.0.0.1 otel-collector
127.0.0.1 ui
127.0.0.1 iot
127.0.0.1 loki
127.0.0.1 jaeger-query
127.0.0.1 pulsar
window安装docker教程 (opens new window)
注意:本教程为window系统的docker,其余环境请自行安装
注意:window系统自带docker-compose,无需安装
注意:先跑起来,不要改任何的密码,请不要擅作主张的修改,如果照着教程运行,还有问题请联系作者
注意:本教程为window系统的docker,其余环境请自行安装
services:
postgresql:
image: timescale/timescaledb:latest-pg17
container_name: postgresql
# 保持容器在没有守护程序的情况下运行
tty: true
restart: always
privileged: true
ports:
- "5432:5432"
volumes:
- ./postgresql17/data:/var/lib/postgresql/data
environment:
- POSTGRES_USER=root
- POSTGRES_PASSWORD=laokou123
- TZ=Asia/Shanghai
networks:
- iot_network
redis:
image: redis:8.0.1
container_name: redis
# 保持容器在没有守护程序的情况下运行
tty: true
restart: always
privileged: true
ports:
- "6379:6379"
volumes:
- ./redis7/conf/redis.conf:/etc/redis/redis.conf
- ./redis7/data:/data
command: redis-server --appendonly yes --requirepass 'laokou123'
environment:
- TZ=Asia/Shanghai
networks:
- iot_network
kafka:
image: bitnami/kafka:4.0.0
container_name: kafka
tty: true
ports:
- '9092:9092'
- '9093:9093'
environment:
# 节点ID
- KAFKA_BROKER_ID=1
# 允许使用kraft,即Kafka替代Zookeeper
- KAFKA_ENABLE_KRAFT=yes
# kafka角色,做broker,也要做controller
- KAFKA_CFG_PROCESS_ROLES=broker,controller
# 指定供外部使用的控制类请求信息
- KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER
# 定义安全协议
- KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT
# 定义kafka服务端socket监听端口
- KAFKA_CFG_LISTENERS=PLAINTEXT://:9092,CONTROLLER://:9093
# 外网访问地址
- KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://kafka:9092
# 允许使用PLAINTEXT监听器,默认false,不建议在生产环境使用
- ALLOW_PLAINTEXT_LISTENER=yes
# 设置broker最大内存,和初始内存
- KAFKA_HEAP_OPTS=-Xmx512M -Xms512M
# 集群地址
- KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=1@kafka:9093
# 节点ID
- KAFKA_CFG_NODE_ID=1
restart: always
privileged: true
networks:
- iot_network
# bin/pulsar-admin tenants create laokou
# bin/pulsar-admin namespaces create laokou/mqtt
# bin/pulsar-admin topics create-partitioned-topic laokou/mqtt/up-property-report -p 4
# bin/pulsar-admin topics create-partitioned-topic laokou/mqtt/down-property-read -p 4
# bin/pulsar-admin topics create-partitioned-topic laokou/mqtt/up-property-read-reply -p 4
# bin/pulsar-admin topics create-partitioned-topic laokou/mqtt/down-property-write -p 4
# bin/pulsar-admin topics create-partitioned-topic laokou/mqtt/up-property-write-reply -p 4
pulsar:
image: apachepulsar/pulsar:4.0.5
container_name: pulsar
# 保持容器在没有守护程序的情况下运行
tty: true
restart: always
privileged: true
command: bin/pulsar standalone
environment:
- PULSAR_MEM=-Xms512m -Xmx512m
ports:
- "6650:6650"
- "8080:8080"
volumes:
- ./pulsar/data:/pulsar/data
networks:
- iot_network
zookeeper:
image: bitnami/zookeeper:3.9.3
container_name: zookeeper
tty: true
ports:
- '2181:2181'
environment:
# 允许匿名登录
- ALLOW_ANONYMOUS_LOGIN=yes
restart: always
privileged: true
networks:
- iot_network
portainer:
image: portainer/portainer-ce:latest
container_name: portainer
# 保持容器在没有守护程序的情况下运行
tty: true
restart: always
privileged: true
ports:
- "9010:9000"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./portainer/data:/data
networks:
iot_network:
driver: bridge
注意:复制到指定目录,然后启动服务【需要授权】
# Ubuntu授权
chmod -R 7777 目录
# 启动服务
docker-compose up - d
访问【docker可视化界面】http://localhost:9010
注意:图片仅供参考,以实际目录为准


# 视频地址
注意:视频仅供参考,以实际项目为准
老寇云平台-项目演示视频 (opens new window)
# 项目运行(请一定按照作者的步骤来)
注意:Maven 版本请使用3.9.x
注意:Maven 版本请使用3.9.x
注意:Maven 版本请使用3.9.x
注意:需要配置Maven setting.xml
<mirrors>
<mirror>
<id>nexus</id>
<mirrorOf>*,!spring-milestones,!spring-snapshots</mirrorOf>
<url>https://mirrors.cloud.tencent.com/nexus/repository/maven-public/</url>
</mirror>
</mirrons>
🚀 软件版本
软件名称 | 软件版本 |
---|---|
JDK | 21 |
Maven | 3.9.4 |
TimescaleDB | 17 |
Redis | 7.2.4 |
🚀 项目拉取(安装git)
- 项目目录里面不能带中文
- 项目目录里面不能带中文
- 项目目录里面不能带中文
ssh方式拉取(推荐)
git clone git@github.com:KouShenhai/KCloud-Platform-IoT.git
https方式
git clone https://github.com/KouShenhai/KCloud-Platform-IoT.git
🚀 项目打包,确保项目能正常编译
# 项目打包
mvn clean install -P dev -DskipTests
🚀 初始化数据库
- kcloud_platform.sql 【系统管理】
- kcloud_platform_domain.sql 【领域事件】
- kcloud_platform_iot.sql 【物联管理】
- kcloud_platform_nacos.sql 【Nacos】
- kcloud_platform_generator.sql 【代码生成】
注意:图片仅供参考,以实际目录为准

注意:不同的数据库执行不同的SQL文件
注意:不同的数据库执行不同的SQL文件
注意:不同的数据库执行不同的SQL文件
🚀 修改pom.xml配置,修改数据库连接信息,其他信息默认即可
注意:先跑起来,不要改任何的密码,请不要擅作主张的修改,如果照着教程运行,还有问题请联系作者
注意:图片仅供参考,以实际目录为准

🚀 运行laokou-nacos,启动单机Nacos(需要配置VM Option)

-Xmx512m
-Xms512m
-Dnacos.standalone=true
-Dnacos.home=./logs/nacos

🚀 访问 Nacos控制台,创建命名空间(如有需要自行修改即可)


🚀 运行laokou-oss、laokou-distributed-identifier、laokou-auth、laokou-gateway、laokou-admin【有先后顺序,请按照步骤】
注意:图片仅供参考,以实际目录为准



🚀 访问API文档
网关服务:http://gateway:5555/doc.html
认证服务:http://auth:1111/doc.html
管理服务:http://admin:9990/doc.html

我是老寇,我们下次再见啦!