按分类查找
数据库、消息队列、可观测、CI/CD、存储和其它中间件,和源码仓库目录对应。
关系库、缓存、分库分表与数据同步
用仓库里的 mysql5.7 / mysql8.0 / 主从编排在本地快速拉起 MySQL,讲清端口映射、root 密码、数据卷和常见启动失败原因。
Redis详解对照 redis6 / redis7 的单机、主从、哨兵和分片编排,说明密码、持久化、数据目录,以及什么时候不该开集群。
MongoDB用 Compose 启动文档数据库 MongoDB,适合本地开发存 JSON 文档、做副本集试验,而不是直接当生产集群。
PostgreSQL一键拉起 PostgreSQL,适合需要窗口函数、JSON 和更严格 SQL 的开发环境,替代本机安装。
Oracle 18c在 Linux 上用编排跑 Oracle 18c 开发库。镜像大、内存占用高,只建议兼容老系统时使用。
Couchbase启动 Couchbase 文档与缓存一体的数据库,用于体验 N1QL 和桶管理,不适合当作默认业务库。
MyCatMyCat 是 MySQL 前的中间件,用来做分库分表和读写分离。先有 MySQL,再跑这个编排才有意义。
CanalCanal 模拟 MySQL slave 解析 binlog,把增量变更投递给下游。用来做缓存刷新、异构同步,不是业务数据库。
SeataSeata 提供分布式事务协调。微服务拆库后需要跨服务一致性时再用,单库应用不必上。
YearningYearning 是 SQL 审核与工单平台,给 DBA 和开发走变更流程,不是给应用连接的业务库。
异步解耦、削峰填谷与流式处理
启动带管理台的 RabbitMQ,讲清 5672/15672 端口、默认账号、延时插件,以及重装前为什么要清数据目录。
Kafka用编排拉起 Kafka,适合日志收集和高吞吐消息。本地开发也要准备好 ZooKeeper 或 KRaft 相关依赖。
RocketMQ阿里系消息中间件,NameServer + Broker 组合。适合顺序消息、事务消息等国内业务场景的本地试验。
ActiveMQ经典 JMS 消息代理。维护老 Java 系统或需要 STOMP/OpenWire 时再用,新项目更常选 RabbitMQ 或 Kafka。
PulsarPulsar 把计算和存储分离,能当队列也能当日志。组件比 Kafka 多,本机先跑单机体验即可。
采集、检索、监控告警与链路追踪
单独启动 ES,做全文检索或给 ELK 打底。注意内存、vm.max_map_count,以及不要把数据写进容器可写层。
ELKElasticsearch + Logstash + Kibana 一套日志检索。机器要够内存,小团队可先看 Loki 方案。
EFK用 Fluentd 替代 Logstash 的采集栈,同样落到 Elasticsearch。适合已经在用 Fluentd 的环境。
ELKF在 ELK 基础上再加 Filebeat,把采集、解析、检索拆开。目录里组件多,按 run.md 顺序启动。
Filebeat轻量日志采集器,把文件或容器日志推到 ES / Logstash / Kafka。它不是存储,必须搭配下游。
Graylog带 Web 界面的日志管理,底层仍依赖 Elasticsearch 和 MongoDB。想少写 Kibana 查询时可以试。
Grafana LokiPromtail 采集 + Loki 存储 + Grafana 查看,比 ELK 更省资源,适合先把容器日志看起来。
PlumeLog面向 Java 应用的链路日志系统,把 traceId 串起来看调用。不是通用 ELK 替代品。
Zipkin分布式链路追踪的经典实现,用来看一次请求经过了哪些服务、耗时在哪。需要应用埋点上报。
Prometheus拉模型监控与告警基础。先确定要刮哪些 exporter,再改配置,不要当成日志系统。
Grafana监控与日志的可视化面板,数据源可以是 Prometheus、Loki、ES。单独启动后要先配数据源。
SkyWalkingApache 可观测平台,指标、日志、链路一体,对 Java Agent 友好。比 Zipkin 更重,内存要留足。
流水线、容器管理和反向代理
浏览器里管理 Docker:看容器、日志、重启。挂载 docker.sock,首次打开要创建管理员账号。
Jenkins详解在容器里跑 Jenkins 做 CI。说明 10000 端口、初始密码位置、时区,以及挂载 docker.sock 在容器内构建镜像。
Nginx详解反向代理和静态站点。配置、html、日志都挂到宿主机,改完配置在容器里 nginx -s reload。
GitLab自建 Git 与 CI。镜像大、内存高,笔记本请慎用;小团队可先看 Gogs。
Gogs轻量自建 Git 服务,资源占用远小于 GitLab,适合个人或小团队托管代码。
RancherKubernetes 多集群管理界面。本机 Compose 版只适合体验,不要当成生产 K8s 发行版。
SonarQube代码质量与安全扫描平台,通常和 CI 流水线一起用。需要配套数据库,启动较慢。
对象存储、分布式文件与网盘
注册配置、任务调度、工作流与协作
注册中心与配置中心。2.2.0 单机依赖外部 MySQL,启动前要改连接信息并导入 nacos-mysql.sql。
XXL-JOB分布式任务调度,带管理台。适合定时任务、分片执行,需要配合执行器和数据库。
PowerJob另一套分布式调度,支持 MapReduce 和工作流。和 XXL-JOB 二选一即可,不要两套一起上生产。
Sentinel流量防护:限流、熔断、降级。控制台单独部署,规则要落到持久化,否则重启丢失。
ZooKeeper分布式协调:选主、配置、Kafka/Dubbo 老版本依赖。新栈能不用 ZK 就不用。
YApi接口文档与 Mock 平台,依赖 MongoDB。适合前后端约定 API,不是网关。
FlowableBPMN 工作流引擎,用来跑审批流。需要数据库,业务里真有流程再部署。
JumpServer堡垒机:人到服务器的审计与授权。组件多,请按官方硬件建议准备,不要和业务容器混部。
NPS轻量内网穿透,把内网服务映射出去。仅用于受控环境,注意鉴权和端口暴露。
Tomcat经典 Java Servlet 容器。把 war 挂进去就能访问,适合跑老应用,新项目多用内嵌 Tomcat。
JRebel配合 Java 热加载的辅助服务。只在开发机使用,不要放到生产网络。
OpenSumi Web浏览器里的 IDE 框架演示。用来体验云端编辑,不是运维必备中间件。
WalleWeb 发布平台,把代码发到目标机。小团队可用,大型流水线更常见 Jenkins / GitLab CI。
JPom简朴的项目运维与发布面板,能管脚本、构建和进程。适合小团队不想上 Jenkins 的场景。
Confluence团队知识库。镜像和许可都要自行处理,个人笔记不必上这么重的套件。
Jira缺陷与迭代跟踪。同样偏重,试用前看内存和许可证;小团队可用更轻的看板。
Dubbo AdminDubbo 服务治理控制台,用来看提供者和消费者。没有 Dubbo 集群就不必启动。
AzkabanLinkedIn 开源的工作流调度,偏大数据任务依赖。常规 Spring 定时任务用 XXL-JOB 更简单。