incloud开发文档 5.1.0 Help

平台启动

当您开始第一次使用平台的时候,可能对工程下面有这么多目录感觉困惑,您可以通过这个【架构设计】中的总体架构、模块化设计对平台结构先有个初步了解。

接下来我们会介绍一下项目是如何启动的,一个程序的启动串联了哪些目录,让大家对程序整体启动的经脉有所了解。

准备

中间件

中间件包括下面内容,具体配置可参考【环境搭建】一章的中间件描述

  • nacos 2.x

  • seata 1.7.x(非必要)

  • redis 7.x

  • mysql 8.x

  • elasticsearch 7.9.1

  • rocketmq 4.9.3

环境变量

中间件启动完成后,需要配置环境变量,环境变量是开发中连接各中间件配置的内容,必需要配置对,参考【环境搭建】一章中的【环境变量】

初始化数据

使用Docker快速启动

启动网关

下载网关镜像,并使用下面命令启动网关服务

docker run -d --name gateway \ -e TZ=Asia/Shanghai \ -e INCLOUD_NACOS_SERVICE_HOST=${INCLOUD_NACOS_SERVICE_HOST} \ -e INCLOUD_ROCKETMQ_SERVICE_HOST=${INCLOUD_ROCKETMQ_SERVICE_HOST} \ -e INCLOUD_MYSQL_SERVICE_HOST=${INCLOUD_MYSQL_SERVICE_HOST} \ -e INCLOUD_BASE_GATEWAY_SERVICE_HOST=${INCLOUD_BASE_GATEWAY_SERVICE_HOST} \ -e INCLOUD_REDIS_SERVICE_HOST=${INCLOUD_REDIS_SERVICE_HOST} \ -e INCLOUD_ES_SERVICE_HOST=${INCLOUD_ES_SERVICE_HOST} \ -e INCLOUD_NACOS_SERVICE_PORT=${INCLOUD_NACOS_SERVICE_PORT} \ -e INCLOUD_NACOS_NAMESPACE=${INCLOUD_NACOS_NAMESPACE} \ -e INCLOUD_BASE_GATEWAY_SERVICE_PORT=${INCLOUD_BASE_GATEWAY_SERVICE_PORT} \ -e INCLOUD_REDIS_SERVICE_PORT=${INCLOUD_REDIS_SERVICE_PORT} \ -e INCLOUD_MYSQL_SERVICE_PORT=${INCLOUD_MYSQL_SERVICE_PORT} \ -e INCLOUD_ES_SERVICE_PORT=${INCLOUD_ES_SERVICE_PORT} \ -e INCLOUD_DB_USER=${INCLOUD_DB_USER} \ -e INCLOUD_DB_PWD=${INCLOUD_DB_PWD} \ -e INCLOUD_DB_SCHEMA=${INCLOUD_DB_SCHEMA} \ -e INCLOUD_DB_DATABASE=${INCLOUD_DB_DATABASE} \ -e INCLOUD_REDIS_PWD=${INCLOUD_REDIS_PWD} \ -p 8000:8000 \ --privileged=true \ --restart=always \ netwisd/incloud-base-gateway:5.2.0-SNAPSHOT

启动主服务

下载主服务镜像,并使用下面命令启动主服务

docker run -d --name main \ -e TZ=Asia/Shanghai \ -e INCLOUD_NACOS_SERVICE_HOST=${INCLOUD_NACOS_SERVICE_HOST} \ -e INCLOUD_ROCKETMQ_SERVICE_HOST=${INCLOUD_ROCKETMQ_SERVICE_HOST} \ -e INCLOUD_MYSQL_SERVICE_HOST=${INCLOUD_MYSQL_SERVICE_HOST} \ -e INCLOUD_BASE_GATEWAY_SERVICE_HOST=${INCLOUD_BASE_GATEWAY_SERVICE_HOST} \ -e INCLOUD_REDIS_SERVICE_HOST=${INCLOUD_REDIS_SERVICE_HOST} \ -e INCLOUD_ES_SERVICE_HOST=${INCLOUD_ES_SERVICE_HOST} \ -e INCLOUD_NACOS_SERVICE_PORT=${INCLOUD_NACOS_SERVICE_PORT} \ -e INCLOUD_NACOS_NAMESPACE=${INCLOUD_NACOS_NAMESPACE} \ -e INCLOUD_BASE_GATEWAY_SERVICE_PORT=${INCLOUD_BASE_GATEWAY_SERVICE_PORT} \ -e INCLOUD_REDIS_SERVICE_PORT=${INCLOUD_REDIS_SERVICE_PORT} \ -e INCLOUD_MYSQL_SERVICE_PORT=${INCLOUD_MYSQL_SERVICE_PORT} \ -e INCLOUD_ES_SERVICE_PORT=${INCLOUD_ES_SERVICE_PORT} \ -e INCLOUD_DB_USER=${INCLOUD_DB_USER} \ -e INCLOUD_DB_PWD=${INCLOUD_DB_PWD} \ -e INCLOUD_DB_SCHEMA=${INCLOUD_DB_SCHEMA} \ -e INCLOUD_DB_DATABASE=${INCLOUD_DB_DATABASE} \ -e INCLOUD_REDIS_PWD=${INCLOUD_REDIS_PWD} \ -p 8001:8001 \ --privileged=true \ --restart=always \ netwisd/incloud-base-main:5.2.0-SNAPSHOT

启动工作流(非必要)

下载工作流镜像,并使用下面命令启动工作流服务

docker run -d --name wf \ -e TZ=Asia/Shanghai \ -e INCLOUD_NACOS_SERVICE_HOST=${INCLOUD_NACOS_SERVICE_HOST} \ -e INCLOUD_ROCKETMQ_SERVICE_HOST=${INCLOUD_ROCKETMQ_SERVICE_HOST} \ -e INCLOUD_MYSQL_SERVICE_HOST=${INCLOUD_MYSQL_SERVICE_HOST} \ -e INCLOUD_BASE_GATEWAY_SERVICE_HOST=${INCLOUD_BASE_GATEWAY_SERVICE_HOST} \ -e INCLOUD_REDIS_SERVICE_HOST=${INCLOUD_REDIS_SERVICE_HOST} \ -e INCLOUD_ES_SERVICE_HOST=${INCLOUD_ES_SERVICE_HOST} \ -e INCLOUD_NACOS_SERVICE_PORT=${INCLOUD_NACOS_SERVICE_PORT} \ -e INCLOUD_NACOS_NAMESPACE=${INCLOUD_NACOS_NAMESPACE} \ -e INCLOUD_BASE_GATEWAY_SERVICE_PORT=${INCLOUD_BASE_GATEWAY_SERVICE_PORT} \ -e INCLOUD_REDIS_SERVICE_PORT=${INCLOUD_REDIS_SERVICE_PORT} \ -e INCLOUD_MYSQL_SERVICE_PORT=${INCLOUD_MYSQL_SERVICE_PORT} \ -e INCLOUD_ES_SERVICE_PORT=${INCLOUD_ES_SERVICE_PORT} \ -e INCLOUD_DB_USER=${INCLOUD_DB_USER} \ -e INCLOUD_DB_PWD=${INCLOUD_DB_PWD} \ -e INCLOUD_DB_SCHEMA=${INCLOUD_DB_SCHEMA} \ -e INCLOUD_DB_DATABASE=${INCLOUD_DB_DATABASE} \ -e INCLOUD_REDIS_PWD=${INCLOUD_REDIS_PWD} \ -p 8003:8003 \ --privileged=true \ --restart=always \ netwisd/incloud-base-wf:5.2.0-SNAPSHOT

启动前端

docker run --name nginx -p 80:80 \ -e TZ=Asia/Shanghai \ -v ~/docker_store/nginx/conf:/etc/nginx/conf.d \ -v ~/docker_store/nginx/html:/usr/share/nginx/html \ -v ~/docker_store/nginx/file:/opt \ -v ~/docker_store/nginx/portal:/home \ -d nginx

nginx的配置文件可以参考

default.conf

其中location /api/v5.0/是后台服务的请求地址,需要根据实际情况修改

location /api/v5.0/ { client_max_body_size 1024m; #proxy_set_header Host $http_host; #proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; #proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://192.168.0.30:32500/; }

使用依赖引入快速启动

下载基础代码模板

后台服务启动

首先启动【网关】服务,每个应用下的xxxApplication代表应用的入口启动类,启动GatewayApplication成功后,会打印网关启动成功字样,端口默认为8000

启动【main】服务,执行MainApplication,启动成功后,会打印main服务启动成功字样,端口默认为8001

启动【wf】服务,执行WfApplication,启动成功后,会打印工作流服务启动成功字样,端口默认为8003

Gateway

前端启动

全部模块启动参考如下:

# 包管理工具 npm install -g pnpm # 同步运行工具 npm install -g concurrently #安装所有依赖,包含所有子工程依赖,项目根目录下运行: pnpm install --frozen-lockfile # 启动全部工程 pnpm run all # 打包全部工程 pnpm run build

如果只需要构建某些子应用,进入子工程目录,可以在子工程目录下运行以下命令:

# xxx 子工程目录名 cd packages/xxx # 构建子工程 pnpm run build # 运行子工程 pnpm run dev # 登录验证 npm adduser --registry=http://192.168.0.110:8081/repository/npm.netwisd/ # 构建子工程 pnpm run build # 推送包 pnpm publish --no-git-checks

登录系统

访问以下地址访问系统

#系统后台地址 http://127.0.0.1/web-base/html/login.html #系统前台地址 http://127.0.0.1/web-client/html/login.html
Login
Last modified: 20 一月 2025