@umacloud/knowledge 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (418) hide show
  1. package/00-governance/governance-capabilities.md +557 -0
  2. package/00-governance/knowledge-map.md +39 -0
  3. package/00-governance/maintenance-policy.md +76 -0
  4. package/00-governance/review-checklist.md +81 -0
  5. package/README.md +13 -0
  6. package/ai/01-standards/agent-development-complete.md +691 -0
  7. package/ai/01-standards/llm-application-complete.md +488 -0
  8. package/ai/01-standards/mlops-complete.md +798 -0
  9. package/ai/01-standards/prompt-engineering-complete.md +646 -0
  10. package/ai/01-standards/rag-architecture-complete.md +649 -0
  11. package/ai/02-playbooks/llm-evaluation-playbook.md +847 -0
  12. package/ai/03-checklists/ai-project-checklist.md +215 -0
  13. package/ai/04-antipatterns/ai-antipatterns.md +661 -0
  14. package/ai/05-cases/case-rag-production.md +147 -0
  15. package/ai/06-glossary/ai-glossary.md +162 -0
  16. package/ai/agent-evaluation-benchmark.md +53 -0
  17. package/ai/ai-agent-memory-context-management.md +41 -0
  18. package/ai/ai-cost-capacity-optimization-playbook.md +42 -0
  19. package/ai/ai-data-security-and-compliance-playbook.md +37 -0
  20. package/ai/ai-domain-index-and-checklist.md +40 -0
  21. package/ai/ai-governance-maturity-model.md +50 -0
  22. package/ai/ai-model-selection-and-routing-strategy.md +47 -0
  23. package/ai/ai-observability-and-oncall-runbook.md +52 -0
  24. package/ai/ai-rag-engineering-playbook.md +42 -0
  25. package/ai/ai-red-team-and-safety-evaluation.md +42 -0
  26. package/ai/ai-release-readiness-and-rollback-gate.md +42 -0
  27. package/ai/llm-agent-engineering-deep-dive.md +57 -0
  28. package/ai/prompt-and-tool-guardrails.md +52 -0
  29. package/api/01-standards/enterprise-api-standards.md +198 -0
  30. package/api/01-standards/rest-api-design-guide.md +63 -0
  31. package/api/02-playbooks/api-pagination-playbook.md +93 -0
  32. package/api/02-playbooks/graphql-production-playbook.md +176 -0
  33. package/api/03-checklists/api-review-checklist.md +55 -0
  34. package/api/04-antipatterns/api-antipatterns.md +112 -0
  35. package/architecture/01-standards/api-gateway-patterns.md +496 -0
  36. package/architecture/01-standards/cloud-native-patterns.md +644 -0
  37. package/architecture/01-standards/distributed-systems-patterns.md +591 -0
  38. package/architecture/01-standards/event-driven-architecture.md +595 -0
  39. package/architecture/01-standards/microservices-patterns-complete.md +968 -0
  40. package/architecture/01-standards/microservices-patterns.md +495 -0
  41. package/architecture/01-standards/system-design-interview.md +664 -0
  42. package/architecture/02-playbooks/microservices-patterns-playbook.md +137 -0
  43. package/architecture/02-playbooks/migration-playbook.md +780 -0
  44. package/architecture/02-playbooks/system-design-playbook.md +779 -0
  45. package/architecture/03-checklists/architecture-decision-checklist.md +297 -0
  46. package/architecture/04-antipatterns/architecture-antipatterns.md +417 -0
  47. package/architecture/05-cases/case-netflix-microservices.md +413 -0
  48. package/architecture/06-glossary/architecture-glossary.md +164 -0
  49. package/architecture/adr-template-and-examples.md +38 -0
  50. package/architecture/api-gateway-deep-dive.md +1291 -0
  51. package/architecture/configuration-management.md +1162 -0
  52. package/architecture/distributed-transactions.md +1220 -0
  53. package/architecture/microservices-complete.md +735 -0
  54. package/architecture/resilience-and-disaster-patterns.md +37 -0
  55. package/architecture/service-governance.md +1198 -0
  56. package/architecture/system-architecture-deep-dive.md +37 -0
  57. package/backend/01-standards/analytics-and-growth.md +65 -0
  58. package/backend/01-standards/api-and-error-conventions.md +120 -0
  59. package/backend/01-standards/application-layering-and-packaging.md +160 -0
  60. package/backend/01-standards/auth-implementation.md +104 -0
  61. package/backend/01-standards/backend-framework-idioms.md +74 -0
  62. package/backend/01-standards/background-jobs-and-async.md +66 -0
  63. package/backend/01-standards/caching-strategies-complete.md +390 -0
  64. package/backend/01-standards/config-and-observability.md +77 -0
  65. package/backend/01-standards/data-modeling-and-persistence.md +94 -0
  66. package/backend/01-standards/django-complete.md +1765 -0
  67. package/backend/01-standards/email-and-notifications.md +64 -0
  68. package/backend/01-standards/fastapi-complete.md +925 -0
  69. package/backend/01-standards/file-upload-and-storage.md +66 -0
  70. package/backend/01-standards/graphql-api-complete.md +416 -0
  71. package/backend/01-standards/llm-application-standard.md +78 -0
  72. package/backend/01-standards/message-queue-patterns.md +379 -0
  73. package/backend/01-standards/microservices-and-distributed.md +78 -0
  74. package/backend/01-standards/nestjs-complete.md +2167 -0
  75. package/backend/01-standards/payment-integration.md +80 -0
  76. package/backend/01-standards/rate-limiting-complete.md +451 -0
  77. package/backend/01-standards/realtime-and-websocket.md +65 -0
  78. package/backend/01-standards/search-and-filtering.md +64 -0
  79. package/backend/01-standards/spring-boot-complete.md +445 -0
  80. package/backend/02-playbooks/api-design-playbook.md +718 -0
  81. package/backend/02-playbooks/email-send-playbook.md +130 -0
  82. package/backend/02-playbooks/file-upload-s3-playbook.md +153 -0
  83. package/backend/02-playbooks/typescript-enterprise-playbook.md +133 -0
  84. package/backend/02-playbooks/websocket-realtime-playbook.md +154 -0
  85. package/backend/03-checklists/api-launch-checklist.md +189 -0
  86. package/backend/04-antipatterns/backend-antipatterns.md +1051 -0
  87. package/blockchain/01-standards/blockchain-basics.md +557 -0
  88. package/blockchain/01-standards/smart-contract-development.md +1315 -0
  89. package/cicd/01-standards/deployment-and-delivery-standard.md +96 -0
  90. package/cicd/01-standards/github-actions-complete.md +473 -0
  91. package/cicd/01-standards/release-and-store-submission.md +75 -0
  92. package/cicd/02-playbooks/cicd-pipeline-playbook.md +144 -0
  93. package/cicd/02-playbooks/release-management-playbook.md +605 -0
  94. package/cicd/03-checklists/pipeline-security-checklist.md +168 -0
  95. package/cicd/04-antipatterns/cicd-antipatterns.md +589 -0
  96. package/cicd/05-cases/case-deployment-automation.md +221 -0
  97. package/cicd/05-cases/case-gitops-transformation.md +212 -0
  98. package/cicd/06-glossary/cicd-glossary.md +114 -0
  99. package/cicd/cicd-blueprint-deep-dive.md +38 -0
  100. package/cicd/release-readiness-gate.md +37 -0
  101. package/cloud-native/01-standards/container-security.md +741 -0
  102. package/cloud-native/01-standards/kubernetes-complete.md +812 -0
  103. package/cloud-native/02-playbooks/api-gateway-playbook.md +155 -0
  104. package/cloud-native/02-playbooks/gitops-with-argocd.md +760 -0
  105. package/cloud-native/02-playbooks/k8s-troubleshooting-playbook.md +1942 -0
  106. package/cloud-native/02-playbooks/message-queue-playbook.md +129 -0
  107. package/cloud-native/02-playbooks/multicloud-governance.md +726 -0
  108. package/cloud-native/02-playbooks/serverless-patterns.md +788 -0
  109. package/cloud-native/02-playbooks/service-mesh-playbook.md +612 -0
  110. package/cloud-native/02-playbooks/terraform-iac-playbook.md +143 -0
  111. package/cloud-native/03-checklists/container-security-checklist.md +431 -0
  112. package/cloud-native/03-checklists/k8s-production-readiness-checklist.md +460 -0
  113. package/cloud-native/04-antipatterns/container-antipatterns.md +660 -0
  114. package/cloud-native/04-antipatterns/k8s-antipatterns.md +743 -0
  115. package/cloud-native/05-cases/case-k8s-migration.md +478 -0
  116. package/cloud-native/05-cases/case-k8s-scaling.md +642 -0
  117. package/cloud-native/05-cases/case-k8s-security-incident.md +397 -0
  118. package/cloud-native/06-glossary/cloud-native-glossary.md +337 -0
  119. package/cross-platform/01-standards/cross-platform-frameworks.md +83 -0
  120. package/cross-platform/01-standards/platform-selection-and-architecture.md +77 -0
  121. package/data/01-standards/elasticsearch-complete.md +2098 -0
  122. package/data/01-standards/postgresql-complete.md +1613 -0
  123. package/data/01-standards/redis-complete.md +1527 -0
  124. package/data/02-playbooks/database-optimization-playbook.md +403 -0
  125. package/data/02-playbooks/elasticsearch-production-playbook.md +132 -0
  126. package/data/03-checklists/database-launch-checklist.md +187 -0
  127. package/data/04-antipatterns/database-antipatterns.md +873 -0
  128. package/data/05-cases/case-database-migration.md +310 -0
  129. package/data/06-glossary/database-glossary.md +440 -0
  130. package/data/data-governance-and-modeling-deep-dive.md +39 -0
  131. package/data-engineering/01-standards/airflow-complete.md +523 -0
  132. package/data-engineering/01-standards/kafka-complete.md +1521 -0
  133. package/data-engineering/02-playbooks/spark-etl-playbook.md +496 -0
  134. package/data-engineering/03-checklists/pipeline-launch-checklist.md +194 -0
  135. package/data-engineering/04-antipatterns/data-pipeline-antipatterns.md +684 -0
  136. package/data-engineering/05-cases/case-real-time-pipeline.md +355 -0
  137. package/data-engineering/06-glossary/data-engineering-glossary.md +429 -0
  138. package/database/01-standards/database-schema-standards.md +147 -0
  139. package/database/02-playbooks/postgresql-optimization-quick.md +52 -0
  140. package/database/02-playbooks/postgresql-performance-optimization.md +58 -0
  141. package/database/02-playbooks/postgresql-production-playbook.md +146 -0
  142. package/database/02-playbooks/redis-caching-playbook.md +117 -0
  143. package/database/03-checklists/database-review-checklist.md +50 -0
  144. package/database/04-antipatterns/database-antipatterns.md +112 -0
  145. package/design/01-standards/ui-design-system-complete.md +423 -0
  146. package/design/02-playbooks/design-handoff-playbook.md +254 -0
  147. package/design/02-playbooks/design-review-playbook.md +388 -0
  148. package/design/03-checklists/design-review-checklist.md +246 -0
  149. package/design/04-antipatterns/design-antipatterns.md +378 -0
  150. package/design/05-cases/case-design-system-adoption.md +328 -0
  151. package/design/06-glossary/design-glossary.md +329 -0
  152. package/design/ui-full-lifecycle-cross-platform-playbook.md +571 -0
  153. package/design/ux-system-deep-dive.md +38 -0
  154. package/design-systems/00-craft-rules.md +71 -0
  155. package/design-systems/aesthetic-families.md +43 -0
  156. package/design-systems/anti-ai-slop.md +162 -0
  157. package/design-systems/bold-geometric.md +120 -0
  158. package/design-systems/brutalist-bold.md +103 -0
  159. package/design-systems/editorial-clean.md +109 -0
  160. package/design-systems/glass-aurora.md +108 -0
  161. package/design-systems/modern-minimal.md +145 -0
  162. package/design-systems/premium-luxury.md +106 -0
  163. package/design-systems/product-type-design-map.md +48 -0
  164. package/design-systems/soft-warm.md +123 -0
  165. package/design-systems/tech-utility.md +113 -0
  166. package/desktop/01-standards/desktop-app-standard.md +72 -0
  167. package/desktop/01-standards/desktop-design.md +71 -0
  168. package/development/00-governance/document-template.md +41 -0
  169. package/development/01-standards/api-versioning-strategies.md +432 -0
  170. package/development/01-standards/authentication-patterns-complete.md +479 -0
  171. package/development/01-standards/css-architecture-complete.md +550 -0
  172. package/development/01-standards/database-migration-strategies.md +484 -0
  173. package/development/01-standards/elasticsearch-complete.md +347 -0
  174. package/development/01-standards/git-complete.md +371 -0
  175. package/development/01-standards/golang-complete.md +1565 -0
  176. package/development/01-standards/graphql-complete.md +298 -0
  177. package/development/01-standards/javascript-bundlers-complete.md +469 -0
  178. package/development/01-standards/javascript-typescript-complete.md +528 -0
  179. package/development/01-standards/jest-complete.md +275 -0
  180. package/development/01-standards/linux-complete.md +234 -0
  181. package/development/01-standards/logging-observability-complete.md +526 -0
  182. package/development/01-standards/microservices-communication.md +502 -0
  183. package/development/01-standards/mongodb-complete.md +406 -0
  184. package/development/01-standards/oauth2-complete.md +285 -0
  185. package/development/01-standards/performance-optimization-complete.md +289 -0
  186. package/development/01-standards/playwright-complete.md +247 -0
  187. package/development/01-standards/postgresql-complete.md +456 -0
  188. package/development/01-standards/pytest-complete.md +340 -0
  189. package/development/01-standards/python-async-programming.md +902 -0
  190. package/development/01-standards/python-complete.md +956 -0
  191. package/development/01-standards/python-decorators-complete.md +799 -0
  192. package/development/01-standards/python-design-patterns.md +2854 -0
  193. package/development/01-standards/python-packaging-distribution.md +420 -0
  194. package/development/01-standards/python-testing-strategies.md +607 -0
  195. package/development/01-standards/python-web-frameworks-comparison.md +471 -0
  196. package/development/01-standards/redis-complete.md +317 -0
  197. package/development/01-standards/rest-api-complete.md +316 -0
  198. package/development/01-standards/rust-complete.md +578 -0
  199. package/development/01-standards/typescript-advanced-types.md +1513 -0
  200. package/development/01-standards/web-security-complete.md +292 -0
  201. package/development/02-playbooks/api-design-playbook.md +810 -0
  202. package/development/02-playbooks/database-migration-playbook.md +580 -0
  203. package/development/02-playbooks/debugging-playbook.md +692 -0
  204. package/development/02-playbooks/feature-delivery-playbook.md +430 -0
  205. package/development/02-playbooks/incident-hotfix-playbook.md +387 -0
  206. package/development/02-playbooks/performance-optimization-playbook.md +531 -0
  207. package/development/02-playbooks/performance-tuning-playbook.md +652 -0
  208. package/development/02-playbooks/refactor-playbook.md +403 -0
  209. package/development/02-playbooks/release-playbook.md +469 -0
  210. package/development/03-checklists/architecture-review-checklist.md +168 -0
  211. package/development/03-checklists/data-migration-checklist.md +157 -0
  212. package/development/03-checklists/oncall-handover-checklist.md +173 -0
  213. package/development/03-checklists/pr-checklist.md +158 -0
  214. package/development/03-checklists/production-readiness-checklist.md +190 -0
  215. package/development/03-checklists/release-readiness-checklist.md +154 -0
  216. package/development/03-checklists/security-review-checklist.md +182 -0
  217. package/development/04-antipatterns/api-antipatterns.md +657 -0
  218. package/development/04-antipatterns/architecture-antipatterns.md +686 -0
  219. package/development/04-antipatterns/backend-antipatterns.md +648 -0
  220. package/development/04-antipatterns/cicd-antipatterns.md +540 -0
  221. package/development/04-antipatterns/code-smell-antipatterns.md +571 -0
  222. package/development/04-antipatterns/data-antipatterns.md +658 -0
  223. package/development/04-antipatterns/database-antipatterns.md +578 -0
  224. package/development/04-antipatterns/frontend-antipatterns.md +635 -0
  225. package/development/04-antipatterns/reliability-antipatterns.md +700 -0
  226. package/development/04-antipatterns/security-antipatterns.md +747 -0
  227. package/development/05-cases/case-api-version-migration.md +428 -0
  228. package/development/05-cases/case-authorization-hardening.md +383 -0
  229. package/development/05-cases/case-bluegreen-rollback.md +466 -0
  230. package/development/05-cases/case-cache-snowball-protection.md +485 -0
  231. package/development/05-cases/case-ci-cd-pipeline.md +544 -0
  232. package/development/05-cases/case-database-scaling.md +500 -0
  233. package/development/05-cases/case-db-hotspot-optimization.md +487 -0
  234. package/development/05-cases/case-incident-mttr-reduction.md +563 -0
  235. package/development/05-cases/case-microservice-migration.md +375 -0
  236. package/development/05-cases/case-performance-optimization.md +406 -0
  237. package/development/05-cases/case-security-incident-response.md +345 -0
  238. package/development/06-glossary/full-stack-glossary.md +166 -0
  239. package/development/09-maturity/quarterly-audit-template.md +35 -0
  240. package/development/11-ui-excellence/ui-aesthetic-system.md +41 -0
  241. package/development/11-ui-excellence/ui-engineering-excellence.md +435 -0
  242. package/development/12-scenarios/development-scenarios-guide.md +565 -0
  243. package/development/13-implementation-assets/implementation-toolkit.md +282 -0
  244. package/development/13-implementation-assets/knowledge-gates-execution.md +43 -0
  245. package/development/14-full-lifecycle/software-lifecycle-gates.md +511 -0
  246. package/development/15-lifecycle-templates/project-templates-collection.md +791 -0
  247. package/development/api-contract-and-versioning-guide.md +36 -0
  248. package/development/api-governance-complete.md +43 -0
  249. package/development/backend-engineering-complete.md +43 -0
  250. package/development/code-review-quality-complete.md +43 -0
  251. package/development/concurrency-reliability-complete.md +43 -0
  252. package/development/database-engineering-complete.md +43 -0
  253. package/development/engineering-effectiveness-complete.md +43 -0
  254. package/development/engineering-standards-deep-dive.md +38 -0
  255. package/development/frontend-engineering-complete.md +43 -0
  256. package/development/performance-capacity-complete.md +43 -0
  257. package/development/refactor-migration-complete.md +42 -0
  258. package/development/refactoring-and-techdebt-playbook.md +37 -0
  259. package/development/security-in-development-complete.md +43 -0
  260. package/devops/01-standards/cicd-pipeline-complete.md +262 -0
  261. package/devops/01-standards/docker-complete.md +1490 -0
  262. package/devops/01-standards/github-actions-complete.md +337 -0
  263. package/devops/01-standards/kubernetes-complete.md +638 -0
  264. package/devops/01-standards/terraform-complete.md +2117 -0
  265. package/devops/02-playbooks/docker-compose-playbook.md +233 -0
  266. package/devops/02-playbooks/docker-k8s-production-playbook.md +186 -0
  267. package/devops/02-playbooks/docker-production-playbook.md +952 -0
  268. package/edge-iot/01-standards/edge-iot-complete.md +473 -0
  269. package/experts/architect/api-design.md +178 -0
  270. package/experts/architect/methodology.md +124 -0
  271. package/experts/architect/security.md +75 -0
  272. package/experts/backend-lead/methodology.md +216 -0
  273. package/experts/devops/methodology.md +160 -0
  274. package/experts/frontend-lead/methodology.md +178 -0
  275. package/experts/product-manager/industry/ecommerce.md +43 -0
  276. package/experts/product-manager/industry/saas.md +40 -0
  277. package/experts/product-manager/methodology.md +97 -0
  278. package/experts/qa-lead/methodology.md +123 -0
  279. package/experts/qa-lead/test-strategy.md +128 -0
  280. package/experts/uiux-designer/methodology.md +125 -0
  281. package/frontend/01-standards/accessibility-complete.md +532 -0
  282. package/frontend/01-standards/accessibility-standard.md +74 -0
  283. package/frontend/01-standards/admin-dashboard-and-crud.md +72 -0
  284. package/frontend/01-standards/design-tokens-complete.md +444 -0
  285. package/frontend/01-standards/forms-and-validation.md +77 -0
  286. package/frontend/01-standards/frontend-architecture-and-layering.md +119 -0
  287. package/frontend/01-standards/i18n-and-localization.md +65 -0
  288. package/frontend/01-standards/nextjs-complete.md +451 -0
  289. package/frontend/01-standards/react-complete.md +713 -0
  290. package/frontend/01-standards/react-hooks-complete-guide.md +1100 -0
  291. package/frontend/01-standards/react-hooks-complete.md +1171 -0
  292. package/frontend/01-standards/seo-and-web-vitals.md +77 -0
  293. package/frontend/01-standards/state-management-complete.md +444 -0
  294. package/frontend/01-standards/vue-complete.md +499 -0
  295. package/frontend/01-standards/vue3-complete.md +2002 -0
  296. package/frontend/01-standards/web-framework-best-practices.md +64 -0
  297. package/frontend/01-standards/web-performance-complete.md +495 -0
  298. package/frontend/02-playbooks/accessibility-a11y-playbook.md +161 -0
  299. package/frontend/02-playbooks/frontend-performance-playbook.md +707 -0
  300. package/frontend/02-playbooks/i18n-internationalization-playbook.md +120 -0
  301. package/frontend/02-playbooks/performance-optimization-playbook.md +163 -0
  302. package/frontend/02-playbooks/react-nextjs-production-playbook.md +167 -0
  303. package/frontend/02-playbooks/react-state-management-playbook.md +173 -0
  304. package/frontend/03-checklists/component-quality-checklist.md +166 -0
  305. package/frontend/03-checklists/frontend-launch-checklist.md +299 -0
  306. package/frontend/04-antipatterns/frontend-antipatterns.md +886 -0
  307. package/frontend/05-cases/case-performance-optimization.md +274 -0
  308. package/harmony/01-standards/harmonyos-arkts-standard.md +75 -0
  309. package/harmony/01-standards/harmonyos-design.md +65 -0
  310. package/high-quality-engineering-playbook.md +54 -0
  311. package/incident/01-standards/incident-response-complete.md +303 -0
  312. package/incident/02-playbooks/chaos-engineering-playbook.md +883 -0
  313. package/incident/02-playbooks/postmortem-playbook.md +398 -0
  314. package/incident/03-checklists/incident-readiness-checklist.md +181 -0
  315. package/incident/04-antipatterns/incident-antipatterns.md +490 -0
  316. package/incident/05-cases/case-cascade-failure.md +176 -0
  317. package/incident/06-glossary/incident-glossary.md +114 -0
  318. package/incident/postmortem-and-response-deep-dive.md +39 -0
  319. package/industries/ecommerce/ecommerce-complete.md +631 -0
  320. package/industries/education/education-complete.md +555 -0
  321. package/industries/fintech/fintech-complete.md +501 -0
  322. package/industries/gaming/gaming-complete.md +587 -0
  323. package/industries/healthcare/healthcare-complete.md +452 -0
  324. package/low-code/01-standards/low-code-complete.md +944 -0
  325. package/miniprogram/01-standards/ai-common-mistakes.md +61 -0
  326. package/miniprogram/01-standards/miniprogram-custom-navbar-capsule.md +77 -0
  327. package/miniprogram/01-standards/miniprogram-design.md +61 -0
  328. package/miniprogram/01-standards/miniprogram-standard.md +81 -0
  329. package/mobile/01-standards/android-material-design.md +70 -0
  330. package/mobile/01-standards/flutter-complete.md +384 -0
  331. package/mobile/01-standards/ios-design-hig.md +78 -0
  332. package/mobile/01-standards/mobile-app-standard.md +85 -0
  333. package/mobile/01-standards/react-native-complete.md +352 -0
  334. package/mobile/02-playbooks/mobile-cross-platform-playbook.md +175 -0
  335. package/mobile/02-playbooks/mobile-performance.md +473 -0
  336. package/mobile/03-checklists/mobile-release-checklist.md +234 -0
  337. package/mobile/04-antipatterns/mobile-antipatterns.md +798 -0
  338. package/mobile/05-cases/case-app-performance.md +500 -0
  339. package/mobile/05-cases/case-app-startup-optimization.md +218 -0
  340. package/mobile/06-glossary/mobile-glossary.md +484 -0
  341. package/observability/01-standards/observability-standards.md +103 -0
  342. package/observability/02-playbooks/prometheus-grafana-playbook.md +135 -0
  343. package/observability/02-playbooks/structured-logging-playbook.md +73 -0
  344. package/observability/03-checklists/observability-checklist.md +54 -0
  345. package/observability/04-antipatterns/observability-antipatterns.md +106 -0
  346. package/operations/01-standards/prometheus-monitoring-complete.md +1578 -0
  347. package/operations/02-playbooks/capacity-planning-playbook.md +620 -0
  348. package/operations/03-checklists/production-launch-checklist.md +365 -0
  349. package/operations/04-antipatterns/operations-antipatterns.md +664 -0
  350. package/operations/05-cases/case-sre-practices.md +581 -0
  351. package/operations/06-glossary/operations-glossary.md +120 -0
  352. package/operations/aiops-anomaly-detection.md +758 -0
  353. package/operations/capacity-planning.md +1061 -0
  354. package/operations/chaos-engineering.md +659 -0
  355. package/operations/incident-command-system.md +38 -0
  356. package/operations/observability-complete.md +442 -0
  357. package/operations/slo-sli-playbook.md +517 -0
  358. package/operations/sre-operations-deep-dive.md +39 -0
  359. package/package.json +8 -0
  360. package/performance/01-standards/performance-and-scalability.md +80 -0
  361. package/performance/01-standards/performance-standards.md +156 -0
  362. package/performance/02-playbooks/query-optimization-playbook.md +103 -0
  363. package/performance/03-checklists/performance-checklist.md +56 -0
  364. package/performance/04-antipatterns/performance-antipatterns.md +146 -0
  365. package/product/01-standards/product-management-complete.md +285 -0
  366. package/product/02-playbooks/feature-launch-playbook.md +207 -0
  367. package/product/02-playbooks/user-research-playbook.md +532 -0
  368. package/product/03-checklists/feature-launch-checklist.md +275 -0
  369. package/product/04-antipatterns/product-antipatterns.md +355 -0
  370. package/product/05-cases/case-mvp-to-scale.md +384 -0
  371. package/product/06-glossary/product-glossary.md +462 -0
  372. package/product/feature-prioritization-framework.md +40 -0
  373. package/product/kpi-and-metric-tree.md +37 -0
  374. package/product/product-discovery-and-prd-deep-dive.md +41 -0
  375. package/quantum/01-standards/quantum-complete.md +1186 -0
  376. package/security/01-standards/api-security-complete.md +511 -0
  377. package/security/01-standards/container-runtime-security.md +574 -0
  378. package/security/01-standards/data-protection-gdpr.md +543 -0
  379. package/security/01-standards/owasp-top10-complete.md +1890 -0
  380. package/security/01-standards/secure-coding-baseline.md +90 -0
  381. package/security/01-standards/supply-chain-security.md +441 -0
  382. package/security/01-standards/web-security-checklist.md +108 -0
  383. package/security/01-standards/zero-trust-architecture.md +521 -0
  384. package/security/02-playbooks/auth-sso-playbook.md +166 -0
  385. package/security/02-playbooks/incident-response-security-playbook.md +588 -0
  386. package/security/02-playbooks/owasp-api-security-playbook.md +129 -0
  387. package/security/02-playbooks/payment-integration-playbook.md +119 -0
  388. package/security/02-playbooks/penetration-testing-playbook.md +517 -0
  389. package/security/03-checklists/security-audit-checklist.md +356 -0
  390. package/security/04-antipatterns/security-coding-antipatterns.md +580 -0
  391. package/security/05-cases/case-log4shell-incident.md +537 -0
  392. package/security/05-cases/case-major-breaches.md +468 -0
  393. package/security/06-glossary/security-glossary.md +212 -0
  394. package/security/compliance-automation.md +993 -0
  395. package/security/container-security.md +680 -0
  396. package/security/devsecops-complete.md +426 -0
  397. package/security/sast-dast-sca.md +775 -0
  398. package/security/secrets-management.md +594 -0
  399. package/security/security-architecture-deep-dive.md +37 -0
  400. package/security/threat-modeling-stride-playbook.md +40 -0
  401. package/seed-templates/auth-system.md +59 -0
  402. package/seed-templates/blog-content.md +94 -0
  403. package/seed-templates/dashboard.md +89 -0
  404. package/seed-templates/docs-site.md +73 -0
  405. package/seed-templates/e-commerce.md +50 -0
  406. package/seed-templates/saas-landing.md +92 -0
  407. package/seed-templates/settings-page.md +51 -0
  408. package/testing/01-standards/test-strategy-and-layering.md +83 -0
  409. package/testing/01-standards/testing-strategy-complete.md +422 -0
  410. package/testing/01-standards/unit-testing-best-practices.md +118 -0
  411. package/testing/02-playbooks/e2e-testing-playbook.md +988 -0
  412. package/testing/02-playbooks/testing-strategy-playbook.md +126 -0
  413. package/testing/03-checklists/test-strategy-checklist.md +208 -0
  414. package/testing/04-antipatterns/testing-antipatterns.md +718 -0
  415. package/testing/05-cases/case-testing-transformation.md +300 -0
  416. package/testing/06-glossary/testing-glossary.md +110 -0
  417. package/testing/risk-based-test-matrix.md +36 -0
  418. package/testing/testing-strategy-deep-dive.md +37 -0
@@ -0,0 +1,660 @@
1
+ ---
2
+ title: 容器反模式库
3
+ version: 1.0.0
4
+ last_updated: 2025-03-20
5
+ owner: platform-team
6
+ tags: [container, docker, antipatterns, best-practices]
7
+ status: production
8
+ domain: cloud-native
9
+ difficulty: intermediate
10
+ quality_score: 70
11
+ ---
12
+
13
+ # 开发:Excellent(11964948@qq.com)
14
+ # 功能:容器常见反模式识别与修正
15
+ # 作用:帮助团队避免容器化常见错误
16
+ # 创建时间:2025-03-20
17
+ # 最后修改:2025-03-20
18
+
19
+ ## 反模式分类
20
+
21
+ - **P0** - 严重问题,必须立即修复
22
+ - **P1** - 重要问题,应尽快修复
23
+ - **P2** - 建议改进,可计划修复
24
+
25
+ ---
26
+
27
+ ## 1. 镜像构建反模式
28
+
29
+ ### 1.1 使用 latest 标签 [P0]
30
+
31
+ **反模式描述**:镜像使用 latest 标签,版本不可追溯。
32
+
33
+ ```dockerfile
34
+ # [FAIL] 反模式
35
+ FROM node:latest
36
+ ```
37
+
38
+ **问题影响**:
39
+ - 版本不可预测
40
+ - 构建结果不一致
41
+ - 无法回滚到特定版本
42
+ - 生产环境风险
43
+
44
+ **正确实践**:
45
+
46
+ ```dockerfile
47
+ # [DONE] 正确做法
48
+ FROM node:20.11-alpine3.19@sha256:abc123...
49
+ ```
50
+
51
+ ### 1.2 镜像过大 [P1]
52
+
53
+ **反模式描述**:镜像包含不必要的工具和包。
54
+
55
+ ```dockerfile
56
+ # [FAIL] 反模式
57
+ FROM ubuntu:latest
58
+ RUN apt-get update && apt-get install -y \
59
+ curl wget vim git build-essential python3 nodejs
60
+ ```
61
+
62
+ **问题影响**:
63
+ - 拉取时间长
64
+ - 存储成本高
65
+ - 攻击面大
66
+ - 启动慢
67
+
68
+ **正确实践**:
69
+
70
+ ```dockerfile
71
+ # [DONE] 正确做法
72
+ FROM python:3.11-slim-bookworm
73
+ # 或使用 alpine
74
+ FROM python:3.11-alpine
75
+ # 或使用 distroless
76
+ FROM gcr.io/distroless/python3-debian12
77
+ ```
78
+
79
+ ### 1.3 未清理缓存 [P1]
80
+
81
+ **反模式描述**:安装后未清理包管理器缓存。
82
+
83
+ ```dockerfile
84
+ # [FAIL] 反模式
85
+ RUN apt-get update && apt-get install -y python3
86
+ RUN pip install -r requirements.txt
87
+ # 未清理缓存
88
+ ```
89
+
90
+ **正确实践**:
91
+
92
+ ```dockerfile
93
+ # [DONE] 正确做法
94
+ RUN apt-get update && \
95
+ apt-get install -y --no-install-recommends python3 && \
96
+ apt-get clean && \
97
+ rm -rf /var/lib/apt/lists/*
98
+
99
+ RUN pip install --no-cache-dir -r requirements.txt
100
+ ```
101
+
102
+ ### 1.4 多个 RUN 指令 [P2]
103
+
104
+ **反模式描述**:每个命令单独一层,增加镜像大小。
105
+
106
+ ```dockerfile
107
+ # [FAIL] 反模式
108
+ RUN apt-get update
109
+ RUN apt-get install -y python3
110
+ RUN apt-get install -y pip
111
+ RUN pip install -r requirements.txt
112
+ ```
113
+
114
+ **正确实践**:
115
+
116
+ ```dockerfile
117
+ # [DONE] 正确做法
118
+ RUN apt-get update && \
119
+ apt-get install -y --no-install-recommends python3 python3-pip && \
120
+ pip install --no-cache-dir -r requirements.txt && \
121
+ apt-get clean && \
122
+ rm -rf /var/lib/apt/lists/*
123
+ ```
124
+
125
+ ---
126
+
127
+ ## 2. 安全反模式
128
+
129
+ ### 2.1 以 root 运行 [P0]
130
+
131
+ **反模式描述**:容器默认以 root 用户运行。
132
+
133
+ ```dockerfile
134
+ # [FAIL] 反模式
135
+ FROM python:3.11-slim
136
+ WORKDIR /app
137
+ COPY . .
138
+ CMD ["python", "app.py"]
139
+ # 默认以 root 运行
140
+ ```
141
+
142
+ **问题影响**:
143
+ - 安全风险
144
+ - 权限过大
145
+ - 容器逃逸风险
146
+
147
+ **正确实践**:
148
+
149
+ ```dockerfile
150
+ # [DONE] 正确做法
151
+ FROM python:3.11-slim
152
+ RUN groupadd -r appgroup && useradd -r -g appgroup appuser
153
+ WORKDIR /app
154
+ COPY --chown=appuser:appgroup . .
155
+ USER appuser
156
+ CMD ["python", "app.py"]
157
+ ```
158
+
159
+ ### 2.2 硬编码密钥 [P0]
160
+
161
+ **反模式描述**:敏感信息硬编码在镜像中。
162
+
163
+ ```dockerfile
164
+ # [FAIL] 反模式
165
+ ENV DATABASE_PASSWORD="plaintext_password"
166
+ ENV API_KEY="secret_key_123"
167
+ RUN echo "password=secret" > /app/config
168
+ ```
169
+
170
+ **问题影响**:
171
+ - 密钥泄露
172
+ - 无法更换密钥
173
+ - 安全审计失败
174
+
175
+ **正确实践**:
176
+
177
+ ```dockerfile
178
+ # [DONE] 正确做法
179
+ # 镜像中不包含敏感信息
180
+ # 运行时通过环境变量或 Secret 注入
181
+ ENV DATABASE_PASSWORD=""
182
+ # Kubernetes 中:
183
+ # env:
184
+ # - name: DATABASE_PASSWORD
185
+ # valueFrom:
186
+ # secretKeyRef:
187
+ # name: db-credentials
188
+ # key: password
189
+ ```
190
+
191
+ ### 2.3 暴露不必要的端口 [P1]
192
+
193
+ **反模式描述**:暴露所有端口。
194
+
195
+ ```dockerfile
196
+ # [FAIL] 反模式
197
+ EXPOSE 80 443 8080 3000 5432 6379
198
+ ```
199
+
200
+ **正确实践**:
201
+
202
+ ```dockerfile
203
+ # [DONE] 正确做法
204
+ EXPOSE 8080
205
+ ```
206
+
207
+ ### 2.4 使用 ADD 而非 COPY [P2]
208
+
209
+ **反模式描述**:不必要的 ADD 增加安全风险。
210
+
211
+ ```dockerfile
212
+ # [FAIL] 反模式
213
+ ADD http://example.com/file.tar.gz /tmp/
214
+ ADD archive.tar.gz /app/
215
+ ```
216
+
217
+ **问题影响**:
218
+ - 自动解压可能导致意外行为
219
+ - 远程文件下载风险
220
+
221
+ **正确实践**:
222
+
223
+ ```dockerfile
224
+ # [DONE] 正确做法
225
+ # 使用 COPY 复制本地文件
226
+ COPY archive.tar.gz /app/
227
+ RUN tar -xzf /app/archive.tar.gz -C /app && rm /app/archive.tar.gz
228
+ ```
229
+
230
+ ---
231
+
232
+ ## 3. 运行时反模式
233
+
234
+ ### 3.1 单进程容器运行多服务 [P0]
235
+
236
+ **反模式描述**:一个容器运行多个服务。
237
+
238
+ ```dockerfile
239
+ # [FAIL] 反模式
240
+ CMD nginx && php-fpm && mysql
241
+ ```
242
+
243
+ **问题影响**:
244
+ - 进程管理困难
245
+ - 资源隔离失效
246
+ - 日志混乱
247
+ - 扩缩容困难
248
+
249
+ **正确实践**:
250
+
251
+ ```dockerfile
252
+ # [DONE] 正确做法
253
+ # 每个服务独立容器
254
+ # Nginx 容器
255
+ FROM nginx:alpine
256
+ CMD ["nginx", "-g", "daemon off;"]
257
+
258
+ # PHP-FPM 容器
259
+ FROM php:8.2-fpm-alpine
260
+ CMD ["php-fpm"]
261
+
262
+ # 使用 Kubernetes Pod 或 Docker Compose 编排
263
+ ```
264
+
265
+ ### 3.2 阻塞式启动脚本 [P1]
266
+
267
+ **反模式描述**:使用复杂的启动脚本。
268
+
269
+ ```bash
270
+ # [FAIL] 反模式
271
+ #!/bin/bash
272
+ echo "Starting..."
273
+ sleep 10
274
+ ./start.sh
275
+ tail -f /var/log/app.log
276
+ ```
277
+
278
+ **正确实践**:
279
+
280
+ ```dockerfile
281
+ # [DONE] 正确做法
282
+ # 直接运行应用进程
283
+ CMD ["python", "app.py"]
284
+ # 或使用 entrypoint 处理信号
285
+ ENTRYPOINT ["./entrypoint.sh"]
286
+ CMD ["python", "app.py"]
287
+ ```
288
+
289
+ ```bash
290
+ # entrypoint.sh
291
+ #!/bin/sh
292
+ set -e
293
+ # 初始化操作
294
+ exec "$@" # 使用 exec 传递信号
295
+ ```
296
+
297
+ ### 3.3 忽略信号处理 [P1]
298
+
299
+ **反模式描述**:应用不处理 SIGTERM 信号。
300
+
301
+ ```dockerfile
302
+ # [FAIL] 反模式
303
+ CMD python app.py & # 后台运行
304
+ ```
305
+
306
+ **问题影响**:
307
+ - 优雅终止失败
308
+ - 强制杀死导致数据丢失
309
+ - 更新中断
310
+
311
+ **正确实践**:
312
+
313
+ ```dockerfile
314
+ # [DONE] 正确做法
315
+ # 前台运行,正确处理信号
316
+ CMD ["python", "app.py"]
317
+ # 或使用 exec
318
+ CMD ["sh", "-c", "exec python app.py"]
319
+ ```
320
+
321
+ ---
322
+
323
+ ## 4. 数据管理反模式
324
+
325
+ ### 4.1 数据存储在容器内 [P0]
326
+
327
+ **反模式描述**:持久化数据存储在容器内部。
328
+
329
+ ```dockerfile
330
+ # [FAIL] 反模式
331
+ VOLUME /data
332
+ # 数据在容器删除时丢失
333
+ ```
334
+
335
+ **问题影响**:
336
+ - 容器删除数据丢失
337
+ - 无法备份
338
+ - 无法共享
339
+
340
+ **正确实践**:
341
+
342
+ ```yaml
343
+ # [DONE] 正确做法
344
+ # Kubernetes 中使用 PVC
345
+ apiVersion: v1
346
+ kind: Pod
347
+ spec:
348
+ containers:
349
+ - name: app
350
+ volumeMounts:
351
+ - name: data
352
+ mountPath: /data
353
+ volumes:
354
+ - name: data
355
+ persistentVolumeClaim:
356
+ claimName: app-pvc
357
+ ```
358
+
359
+ ### 4.2 写入容器文件系统 [P1]
360
+
361
+ **反模式描述**:应用写入容器文件系统。
362
+
363
+ ```dockerfile
364
+ # [FAIL] 反模式
365
+ # 应用写入 /app/data/
366
+ # 每次重启数据丢失
367
+ ```
368
+
369
+ **正确实践**:
370
+
371
+ ```yaml
372
+ # [DONE] 正确做法
373
+ # 挂载 emptyDir 或 PVC
374
+ volumeMounts:
375
+ - name: app-data
376
+ mountPath: /app/data
377
+ volumes:
378
+ - name: app-data
379
+ emptyDir: {}
380
+ ```
381
+
382
+ ---
383
+
384
+ ## 5. 网络反模式
385
+
386
+ ### 5.1 host 网络模式 [P0]
387
+
388
+ **反模式描述**:使用 host 网络模式。
389
+
390
+ ```yaml
391
+ # [FAIL] 反模式
392
+ docker run --net host myapp
393
+ ```
394
+
395
+ **问题影响**:
396
+ - 端口冲突
397
+ - 网络隔离失效
398
+ - 安全风险
399
+
400
+ **正确实践**:
401
+
402
+ ```yaml
403
+ # [DONE] 正确做法
404
+ docker run -p 8080:8080 myapp
405
+ # Kubernetes
406
+ apiVersion: v1
407
+ kind: Pod
408
+ spec:
409
+ hostNetwork: false
410
+ containers:
411
+ - name: app
412
+ ports:
413
+ - containerPort: 8080
414
+ ```
415
+
416
+ ### 5.2 特权端口 [P1]
417
+
418
+ **反模式描述**:容器尝试绑定特权端口。
419
+
420
+ ```dockerfile
421
+ # [FAIL] 反模式
422
+ EXPOSE 80
423
+ # 非 root 无法绑定
424
+ ```
425
+
426
+ **正确实践**:
427
+
428
+ ```dockerfile
429
+ # [DONE] 正确做法
430
+ EXPOSE 8080
431
+ # 或使用 Kubernetes service 映射
432
+ ```
433
+
434
+ ---
435
+
436
+ ## 6. 资源管理反模式
437
+
438
+ ### 6.1 无资源限制 [P0]
439
+
440
+ **反模式描述**:容器无资源限制。
441
+
442
+ ```yaml
443
+ # [FAIL] 反模式
444
+ docker run myapp
445
+ # 无 CPU/内存限制
446
+ ```
447
+
448
+ **问题影响**:
449
+ - 资源耗尽
450
+ - OOMKilled
451
+ - 影响其他容器
452
+
453
+ **正确实践**:
454
+
455
+ ```yaml
456
+ # [DONE] 正确做法
457
+ docker run --memory=1g --cpus=2 myapp
458
+ # Kubernetes
459
+ resources:
460
+ requests:
461
+ cpu: "500m"
462
+ memory: "512Mi"
463
+ limits:
464
+ cpu: "2000m"
465
+ memory: "1Gi"
466
+ ```
467
+
468
+ ### 6.2 内存限制过低 [P1]
469
+
470
+ **反模式描述**:内存限制低于实际需求。
471
+
472
+ ```yaml
473
+ # [FAIL] 反模式
474
+ resources:
475
+ limits:
476
+ memory: "64Mi" # 太小
477
+ ```
478
+
479
+ **正确实践**:
480
+
481
+ ```yaml
482
+ # [DONE] 正确做法
483
+ # 根据实际使用设置
484
+ resources:
485
+ limits:
486
+ memory: "1Gi"
487
+ # 基于监控数据调整
488
+ ```
489
+
490
+ ---
491
+
492
+ ## 7. 日志管理反模式
493
+
494
+ ### 7.1 日志写入文件 [P1]
495
+
496
+ **反模式描述**:应用日志写入文件。
497
+
498
+ ```python
499
+ # [FAIL] 反模式
500
+ with open('/var/log/app.log', 'a') as f:
501
+ f.write(log_message)
502
+ ```
503
+
504
+ **问题影响**:
505
+ - 日志采集困难
506
+ - 磁盘空间耗尽
507
+ - 无法集中管理
508
+
509
+ **正确实践**:
510
+
511
+ ```python
512
+ # [DONE] 正确做法
513
+ import logging
514
+ import sys
515
+
516
+ logger = logging.getLogger()
517
+ logger.addHandler(logging.StreamHandler(sys.stdout))
518
+ logger.info("Application started")
519
+ ```
520
+
521
+ ### 7.2 日志格式不规范 [P2]
522
+
523
+ **反模式描述**:日志格式不统一。
524
+
525
+ ```python
526
+ # [FAIL] 反模式
527
+ print(f"Error: {error}")
528
+ print(f"User {user_id} logged in")
529
+ ```
530
+
531
+ **正确实践**:
532
+
533
+ ```python
534
+ # [DONE] 正确做法
535
+ import logging
536
+ import json
537
+
538
+ logger = logging.getLogger()
539
+
540
+ # 结构化日志
541
+ log_data = {
542
+ "level": "INFO",
543
+ "message": "User logged in",
544
+ "user_id": user_id,
545
+ "timestamp": datetime.utcnow().isoformat()
546
+ }
547
+ logger.info(json.dumps(log_data))
548
+ ```
549
+
550
+ ---
551
+
552
+ ## 8. 健康检查反模式
553
+
554
+ ### 8.1 无健康检查 [P1]
555
+
556
+ **反模式描述**:容器无健康检查。
557
+
558
+ ```dockerfile
559
+ # [FAIL] 反模式
560
+ # 无 HEALTHCHECK
561
+ ```
562
+
563
+ **问题影响**:
564
+ - 死锁无法检测
565
+ - 流量发送到不健康容器
566
+
567
+ **正确实践**:
568
+
569
+ ```dockerfile
570
+ # [DONE] 正确做法
571
+ HEALTHCHECK --interval=30s --timeout=3s --start-period=10s --retries=3 \
572
+ CMD curl -f http://localhost:8080/health || exit 1
573
+ ```
574
+
575
+ ### 8.2 健康检查过于简单 [P2]
576
+
577
+ **反模式描述**:健康检查不验证依赖。
578
+
579
+ ```dockerfile
580
+ # [FAIL] 反模式
581
+ HEALTHCHECK CMD echo "healthy"
582
+ ```
583
+
584
+ **正确实践**:
585
+
586
+ ```dockerfile
587
+ # [DONE] 正确做法
588
+ HEALTHCHECK --interval=30s --timeout=3s \
589
+ CMD curl -f http://localhost:8080/health/ready || exit 1
590
+ # /health/ready 检查数据库连接等
591
+ ```
592
+
593
+ ---
594
+
595
+ ## 9. 依赖管理反模式
596
+
597
+ ### 9.1 依赖未锁定 [P1]
598
+
599
+ **反模式描述**:未使用 lock 文件。
600
+
601
+ ```dockerfile
602
+ # [FAIL] 反模式
603
+ RUN pip install flask
604
+ RUN npm install express
605
+ # 无版本锁定
606
+ ```
607
+
608
+ **问题影响**:
609
+ - 构建不一致
610
+ - 依赖冲突
611
+ - 安全漏洞
612
+
613
+ **正确实践**:
614
+
615
+ ```dockerfile
616
+ # [DONE] 正确做法
617
+ COPY requirements.txt .
618
+ RUN pip install --no-cache-dir -r requirements.txt
619
+
620
+ # 或使用 lock 文件
621
+ COPY Pipfile Pipfile.lock .
622
+ RUN pip install pipenv && pipenv install --system
623
+ ```
624
+
625
+ ### 9.2 开发依赖进入生产 [P1]
626
+
627
+ **反模式描述**:生产镜像包含开发依赖。
628
+
629
+ ```dockerfile
630
+ # [FAIL] 反模式
631
+ COPY package.json .
632
+ RUN npm install # 包含 devDependencies
633
+ ```
634
+
635
+ **正确实践**:
636
+
637
+ ```dockerfile
638
+ # [DONE] 正确做法
639
+ # 多阶段构建
640
+ FROM node:20 AS builder
641
+ WORKDIR /app
642
+ COPY package*.json ./
643
+ RUN npm ci
644
+
645
+ FROM node:20-alpine
646
+ WORKDIR /app
647
+ COPY --from=builder /app/node_modules ./node_modules
648
+ COPY . .
649
+ RUN npm prune --production
650
+ CMD ["node", "app.js"]
651
+ ```
652
+
653
+ ---
654
+
655
+ ## 参考资料
656
+
657
+ - [Docker 最佳实践](https://docs.docker.com/develop/develop-images/dockerfile_best-practices/)
658
+ - [CIS Docker Benchmark](https://www.cisecurity.org/benchmark/docker)
659
+ - [OWASP Docker Security](https://cheatsheetseries.owasp.org/cheatsheets/Docker_Security_Cheat_Sheet.html)
660
+ - [Docker 反模式](https://docs.docker.com/develop/dev-best-practices/)