本项目提供了一套完整的中间件服务一键部署工具,支持快速搭建本地开发环境所需的各种中间件服务。
使用启动脚本可以自动检查环境、初始化目录、启动服务并执行健康检查:
# 赋予脚本执行权限
chmod +x start-local.sh
chmod +x health_check_all.sh
# 一键部署(自动检查环境、创建目录、启动服务、执行健康检查)
./start-local.sh
# 清理并重新部署
./start-local.sh --clean
如果需要更精细的控制,可以使用以下参数:
# 强制重启所有容器
./start-local.sh --force
# 只执行初始化操作,不启动服务
./start-local.sh --init-only
# 只启动服务,不执行初始化操作
./start-local.sh --start-only
# 跳过环境检查
./start-local.sh --skip-env-check
# 单独执行健康检查
./health_check_all.sh
| 服务 | 地址 | 账号/密码 |
|---|---|---|
| MySQL | localhost:3306 | root/root123 |
| Redis | localhost:6379 | redis123 |
| MongoDB | localhost:27017 | admin/admin123 |
| Nacos | http://localhost:8848/nacos | nacos/nacos |
| Sentinel | http://localhost:8858 | sentinel/sentinel |
| XXL-Job | http://localhost:9900/xxl-job-admin | admin/123456 |
| Elasticsearch | http://localhost:9200 | elastic/changeme |
| Kibana | http://localhost:5601 | - |
| MinIO | http://localhost:9000 | test/Ab123456 |
| MinIO Console | http://localhost:9001 | test/Ab123456 |
| Kafka | localhost:9092 | - |
| Kafka UI | http://localhost:9901 | - |
| SpringBoot Admin | http://localhost:9902 | admin/admin123 |
| Prometheus | http://localhost:9090 | - |
| Grafana | http://localhost:3000 | admin/admin123 |
| Neo4j | http://localhost:7474 | neo4j/neo4j123 |
| Milvus gRPC API | localhost:19530 | - |
| Milvus Web UI | http://localhost:9091/webui/ | 内置管理界面 |
| Attu (Milvus管理工具) | http://localhost:9905 | 可视化管理界面 |
每个中间件都有对应的详细部署配置文档:
| 中间件 | 文档路径 | 说明 |
|---|---|---|
| MySQL | docs/mysql-deployment-guide.md | MySQL 8.0 数据库部署配置 |
| Redis | docs/redis-deployment-guide.md | Redis 7.2 缓存服务部署配置 |
| MongoDB | docs/mongodb-deployment-guide.md | MongoDB 文档数据库部署配置 |
| Nacos | docs/nacos-deployment-guide.md | Nacos 2.5.0 服务发现配置管理 |
| Milvus | docs/milvus-deployment-guide.md | Milvus 2.5.14 向量数据库部署配置 |
| Kafka | docs/kafka-deployment-guide.md | Kafka 3.6.1 消息队列部署配置 |
| Elasticsearch | docs/elasticsearch-deployment-guide.md | Elasticsearch 9.0.0 搜索引擎部署配置 |
| MinIO | docs/minio-deployment-guide.md | MinIO 对象存储部署配置 |
| Milvus Web UI | http://localhost:9091 | - |
. ├── start-local.sh # 主启动脚本(一键部署) ├── health_check_all.sh # 健康检查脚本 ├── clean-all-data.sh # 数据清理脚本 ├── health_check/ # 健康检查工具 ├── mysql/ # MySQL服务 ├── redis/ # Redis服务 ├── mongodb/ # MongoDB服务 ├── nacos/ # Nacos服务 ├── sentinel/ # Sentinel服务 ├── xxl-job/ # XXL-Job服务 ├── elasticsearch/ # Elasticsearch服务 ├── minio/ # MinIO服务 ├── kafka/ # Kafka服务 ├── prometheus/ # Prometheus服务 ├── grafana/ # Grafana服务 ├── milvus/ # Milvus向量数据库服务 └── neo4j/ # Neo4j服务
检查对应服务的日志:
cd <服务目录>
docker compose logs
如果遇到端口冲突,可以修改对应服务的docker-compose.yml文件中的端口映射。
如果遇到数据目录权限问题,可以手动设置权限:
chmod -R 777 <服务目录>/data
如果服务之间无法通信,可以检查网络配置:
docker network inspect middleware-network
定期执行以下命令更新镜像:
# 更新所有服务的镜像
docker compose pull
# 重启服务
./start-local.sh --force
欢迎提交Issue和Pull Request来完善本项目。
本项目采用MIT许可证。