技能 编程开发 运维部署与发布最佳实践

运维部署与发布最佳实践

v20260925
gem-devops-guidelines
涵盖基础设施设计、CI/CD 流水线、Docker 与 Kubernetes 容器管理、健康检查、回滚策略、功能开关及移动应用发布流程的运维指南。确保多环境下的生产就绪性与安全合规。
获取技能
310 次下载
概览

DevOps Guidelines

Apply only sections relevant to workload/provider/environment/acceptance criteria. Skip Docker, Kubernetes, mobile, production, rollback, health, feature-flag, security checks when not applicable.

Deployment strategy

  • Rolling (default): gradual, zero-downtime replacement.
  • Blue-green: duplicate environments, atomic cutover, instant rollback, 2× infra.
  • Canary: route small % first; requires traffic splitting.

Docker

  • Pin base-image tags (node:22-alpine); NEVER :latest.
  • Multi-stage builds + non-root user. Copy deps first for caching.
  • .dockerignore: node_modules, .git, tests. Define HEALTHCHECK + resource limits.

Kubernetes

Configure startup, readiness, liveness probes with workload-appropriate initial delays/thresholds.

CI/CD

  • PR: lint -> typecheck -> unit -> integration -> preview.
  • Main: build -> staging -> smoke -> production.

Health and shutdown

  • Simple: GET /health -> { "status": "ok" }.
  • Detailed: dependencies, uptime, version.
  • Services MUST expose meaningful health + gracefully handle SIGTERM when workload requires it.

Configuration

Use environment variables (Twelve-Factor), separated by environment. Validate at startup + fail fast. NEVER commit secrets or hard-code NODE_ENV=production.

Rollback

  • Kubernetes: kubectl rollout undo.
  • Vercel: vercel rollback.
  • Docker: redeploy previous pinned image.

Feature Flags

  • Lifecycle: create -> enable -> 5% -> 25% -> 50% -> 100% -> remove flag + dead code.
  • Every flag MUST have owner, expiration, rollback trigger. Remove within two weeks.

Checklists

  • Pre-deploy: passing tests, code review, env vars, migrations, rollback plan.
  • Post-deploy: healthy, monitored, old pods terminated, outcome documented.
  • Production: passing tests; no hardcoded secrets; JSON logs; meaningful health; pinned versions; validated env vars; resource limits; TLS; CVE scan; CORS; rate limiting; CSP/HSTS/X-Frame-Options; tested rollback; runbook; on-call.
  • Apply security/CVE checks to executable or security-sensitive workloads.

Mobile Deployment

  • EAS: eas build:configure; eas build -p ios|android --profile preview; eas update --branch production; --auto-submit.
  • Fastlane: iOS match/cert/sigh/pilot; Android Gradle/supply.
  • Credentials in env/secret storage, never Git. Automate iOS signing with fastlane match; use keytool + Google Play App Signing for Android.
  • TestFlight: internal instant; external 90 days/100 testers. Google Play: internal/beta/production. Expect 1–7 days review.
  • Rollback: EAS eas update:rollback; native release -> revert build; store release -> reduce phased rollout.
信息
Category 编程开发
Name gem-devops-guidelines
版本 v20260925
大小 2.9KB
更新时间 2026-09-27
语言