Commit Graph

16 Commits

Author SHA1 Message Date
Your Name e5ef6792d1 feat: 新增网卡配置文件生成器(ifcfg/NM keyfile/Netplan)
- 新增 3 个网络配置生成器,覆盖 CentOS/RHEL 7-9 + Ubuntu 18.04-24.04:
  - network-rhel-ifcfg: RHEL/CentOS 7-8 ifcfg 风格(network-scripts)
  - network-rhel-nmkeyfile: RHEL/CentOS 9 NetworkManager keyfile
  - network-ubuntu-netplan: Ubuntu Netplan YAML
- 每个生成器支持 5 种配置类型: 静态IP / DHCP / Bond / Bridge / VLAN
- Bond 支持 7 种模式(0-6),含 miimon/lacp_rate/成员网卡配置
- 支持路由 Metric 配置(ifcfg METRIC= / NM route-metric= / Netplan metric:)
- ConfigForm 增加 valueIn 依赖支持(修复 keepalived 已有但失效的 valueIn bug)
- 新增「网络配置」侧边栏分类,组件计数 60 -> 63
2026-08-05 17:16:41 +08:00
Your Name 02d514fe7d fix(schemas): 修复 nginx/apache/bind/syslog 多个生成配置 bug
通过本地真实工具(nginx -t / named-checkconf / apache2 -t / redis-server)
对全部 60 个 schema 进行 dry-run 验证,发现并修复:

nginx (src/schemas/nginx.js):
  - 'listen ... http2' 是 nginx 1.25+ 废弃写法,改为 listen 443 ssl + http2 on
  - 修复 'add_header not allowed here' 错误:原模板把 CORS 头写到了关闭的
    server 块外(落到 http 顶层),CORS 头重写到 server 作用域内
  - 'if' 块内 add_header 在 nginx 1.22+ 直接 emerg;改为只在 if 里 'return 204',
    CORS 头由 server 作用域 add_header always 继承到 204 响应
  - upstreamServers 默认值漏 ';' (server 127.0.0.1:8080 缺分号),
    模板自动补全 + 默认值修正
  - add_header X-Cache-Status 加 always,避免清空 CORS 头

apache (src/schemas/apache.js):
  - mod_log_config 是 built-in 核心模块,移除 LoadModule 行(会报 'is built-in')
  - maxRequestWorkers 默认 256 与 threadsPerChild=25 不整除,改为 250

bind (src/schemas/bind.js):
  - ACL 列表 { 127.0.0.1; any } 缺末尾 ';',BIND 9.11+ 报 'missing ; before }'
    加 acl() 工具自动补 ';',对 listen-on/allow-query/allow-recursion 均生效
  - dnssec-enable 在 BIND 9.16+ 已删除(自动启用),改为注释
  - 删掉硬编码的 'include /etc/named.rfc1912.zones' 与 named.root.key
    (不同发行版路径不同,9.16+ 默认不存在,会导致启动失败)

syslog (src/schemas/syslog.js):
  - 启用 enableHighPrecisionTimestamps 时会重复输出 'ActionFileDefaultTemplate'
    (rsyslog 警告)。改为仅在 logFormat 不是 RSYSLOG_FileFormat 时输出自定义
    template(RSYSLOG_FileFormat 自带微秒精度)

本机验证: nginx / bind 9.18 / apache 2.4 / redis 7.0 全部 PASS;
26 个 YAML / 3 个 XML / 1 个 JSON schema 全部可解析。
2026-07-28 16:46:09 +08:00
cnbugs 0ae7a5858f fix: 注册 Dockerfile 到 Schema 中心 2026-07-24 16:26:50 +08:00
cnbugs 6426eedab5 feat: 新增 Dockerfile 配置模板,总计 60 个组件
Dockerfile 支持:
- 基础镜像 (FROM) + 多阶段构建 + 平台架构
- 元数据 LABEL / 构建参数 ARG
- 环境变量 ENV / 工作目录 WORKDIR
- 文件复制 COPY + chown/chmod + ADD (自动解压/URL)
- 依赖安装: apk/apt/yum/dnf 包管理器 + 应用依赖 + 构建命令
- 端口 EXPOSE / 数据卷 VOLUME
- 用户 USER (非 root 运行)
- 健康检查 HEALTHCHECK (interval/timeout/retries/start-period)
- 入口 ENTRYPOINT / CMD (exec/shell 格式)
- 停止信号 STOPSIGNAL / Shell 指令
2026-07-24 15:12:46 +08:00
cnbugs 4e98eb8c4a feat: 8 个核心 schema 生产级增强
K8S 工作负载 (5个):
- StatefulSet: +探针(Startup/Liveness/Readiness) +环境变量 +节点亲和性 +Pod反亲和性 +容忍度 +安全上下文 +ServiceAccount
- DaemonSet: +容器端口 +探针 +环境变量 +卷挂载 +节点亲和性 +安全上下文 +ServiceAccount
- Pod: +探针 +卷挂载(5种类型) +NodeSelector +节点亲和性 +Pod反亲和性 +容忍度 +安全上下文 +HostNetwork +DNSPolicy
- CronJob: +容器端口 +资源限制 +环境变量 +卷挂载 +安全上下文 +ServiceAccount
- Job: +容器端口 +资源限制 +环境变量 +卷挂载 +安全上下文 +ServiceAccount

中间件 (3个):
- Redis: +ACL配置 +慢日志 +延迟监控 +客户端管理(ioThreads/lazyfree)
- PostgreSQL: +连接池 +流复制(GTID/WAL) +Autovacuum调优
- NGINX: +限流(limit_req) +Upstream负载均衡(least_conn/ip_hash) +缓存(proxy_cache)
2026-07-22 15:00:34 +08:00
cnbugs e258969c37 feat: K8s Deployment 全面增强,补充生产级配置
新增 11 个配置分组:
- 启动探针 (Startup Probe): 类型、路径/端口/命令、初始延迟、周期、失败阈值、超时
- 存活探针 (Liveness Probe): 完整参数 + HTTP Headers + Exec 命令
- 就绪探针 (Readiness Probe): 完整参数 + HTTP Headers + Exec 命令
- 环境变量: KEY=VALUE 直接输入、从 ConfigMap/Secret 导入
- 卷挂载: emptyDir / PVC / ConfigMap / Secret / HostPath
- NodeSelector: 简单节点标签匹配
- 节点亲和性 (Node Affinity): required / preferred + In/NotIn/Exists/Gt/Lt
- Pod 反亲和性: 跨节点/可用区分散副本
- 容忍度 (Tolerations): NoSchedule / PreferNoSchedule / NoExecute
- 安全上下文: runAsUser、readOnlyRootFilesystem、fsGroup
- 部署策略增强: revisionHistoryLimit、progressDeadlineSeconds、minReadySeconds
- 标签增强: ServiceAccount、优雅终止时间
2026-07-22 14:42:14 +08:00
cnbugs c45a59c6d1 feat: 移动端自适应布局
- 768px 断点: 侧边栏变为抽屉式滑出, 汉堡按钮切换
- 移动端顶栏: 显示当前组件名称
- 移动端 Tab: 配置表单/代码预览一键切换
- 遮罩层: 点击遮罩自动收起侧边栏
- 切换组件后自动收起侧边栏并回到表单 tab
- 平板端 (1024px) 表单区域适当缩窄
0.0.2
2026-07-19 16:35:29 +08:00
cnbugs b951e29c00 fix: 修复 schema 切换时 generator 被旧 config 调用导致白板
根因: activeSchemaId 变化后,ConfigForm 还没 emit 新默认值,generator 就用旧 config 执行了
修复: 在 App.vue 中 watch activeSchemaId,切换时立即用新 schema 默认值重置 config
同时修复 bind.js 中 forwarders.split() 的防御性空值处理
2026-07-19 16:25:07 +08:00
cnbugs 14f02df58d chore: 移除误提交的 tar.gz,更新 gitignore 2026-07-19 16:11:14 +08:00
cnbugs d80d33e6f6 feat: 新增 15 个服务组件,总计 59 个
系统服务: NTP, DHCP, BIND, NFS, SAMBA, RSYNC, Sersync, vsftpd, Subversion
数据库中间件: Mycat
CI/CD: GitLab, Jenkins
高可用: Keepalived, HAProxy, LVS

新增 4 个分类: 系统服务、数据库中间件、CI/CD、高可用
2026-07-19 16:11:09 +08:00
cnbugs 3d6501efd5 feat: 新增 Apache、Tomcat,总计 44 个组件
- Apache: MPM 模型(event/worker/prefork)、SSL、反向代理、模块管理、Gzip
- Tomcat: 连接器配置、线程池、AJP、SSL、JVM 内存(Xms/Xmx)、GC 策略
0.0.1
2026-07-18 19:59:57 +08:00
cnbugs 2916dce148 feat: 新增 16 个中间件组件,总计 42 个
数据库: PostgreSQL, Oracle
搜索引擎: Elasticsearch
消息队列: RocketMQ, Kafka
服务治理: Nacos
分布式协调: ZooKeeper, Etcd
容器化: Docker, Docker Compose
日志监控: Logstash, Kibana, Prometheus, Grafana, Zabbix, Syslog

新增分类: 搜索引擎、消息队列、服务治理、分布式协调、容器化、日志监控
更新 README 组件矩阵与侧边栏计数
2026-07-18 19:54:57 +08:00
cnbugs a15d738cf4 feat: 侧边栏分类折叠功能
- 点击分类标题可展开/折叠
- 显示每个分类的组件数量徽标
- 箭头指示器随状态旋转
- 切换组件时自动展开对应分类
- 搜索时自动展开所有匹配分类
- 底部显示组件总数
2026-07-18 19:44:16 +08:00
cnbugs 4f702b833a feat: 新增 18 个 K8s 资源配置模板
工作负载: Pod, StatefulSet, DaemonSet, Job, CronJob
服务发现: Ingress
存储管理: PersistentVolume, PersistentVolumeClaim, StorageClass
配置与密钥: ConfigMap, Secret
安全与权限: ServiceAccount, Role, ClusterRole, RoleBinding, ClusterRoleBinding, NetworkPolicy
集群管理: Namespace

总计支持 26 个组件,覆盖 K8s 核心资源全谱
2026-07-18 19:39:45 +08:00
cnbugs 4c25ae183e feat: 新增 MongoDB、Ansible、Ansible Playbook 三个组件
- MongoDB: WiredTiger 引擎、认证、TLS、副本集、Oplog、压缩算法
- Ansible: SSH 连接、Pipelining、Become 提权、Forks、日志、事实缓存
- Ansible Playbook: 变量、包管理、服务管理、文件复制、模板渲染、Shell、Handlers
- 更新 README 组件矩阵与项目结构
- 更新 Schema 注册中心,新增自动化运维分类
2026-07-18 19:28:34 +08:00
cnbugs 5070664593 feat: 初始化 ConfTemplate 云原生配置文件生成器
- Vue 3 + Element Plus + Monaco Editor 技术栈
- 支持 NGINX、Redis、MySQL、K8s Deployment、K8s Service 五个组件
- 侧边栏搜索过滤、动态表单联动、实时代码预览
- 一键复制/下载/重置,localStorage 状态持久化
- 纯前端静态页面,零后端依赖
2026-07-18 19:19:14 +08:00