返回 Skill 列表
extension
分类: 开发与工程无需 API Key

devops

在Cloudflare(Workers、R2、D1、KV、Pages、持久化对象、浏览器渲染)、Docker容器以及Google云平台(计算引擎、GKE、Cloud Run、应用引擎、云存储)上部署和管理云基础设施。当向边缘部署无服务器函数、配置边缘计算解决方案、管理Docker容器和镜像、设置CI/CD管道、优化云基础设施成本、实施全局缓存策略、与云数据库合作或构建云原生应用程序时使用。

person作者: jakexiaohubgithub

DevOps Skill

Comprehensive guide for deploying and managing cloud infrastructure across Cloudflare edge platform, Docker containerization, and Google Cloud Platform.

When to Use This Skill

Use this skill when:

  • Deploying serverless applications to Cloudflare Workers
  • Containerizing applications with Docker
  • Managing Google Cloud infrastructure with gcloud CLI
  • Setting up CI/CD pipelines across platforms
  • Optimizing cloud infrastructure costs
  • Implementing multi-region deployments
  • Building edge-first architectures
  • Managing container orchestration with Kubernetes
  • Configuring cloud storage solutions (R2, Cloud Storage)
  • Automating infrastructure with scripts and IaC

Platform Selection Guide

When to Use Cloudflare

Best For:

  • Edge-first applications with global distribution
  • Ultra-low latency requirements (<50ms)
  • Static sites with serverless functions
  • Zero egress cost scenarios (R2 storage)
  • WebSocket/real-time applications (Durable Objects)
  • AI/ML at the edge (Workers AI)

Key Products:

  • Workers (serverless functions)
  • R2 (object storage, S3-compatible)
  • D1 (SQLite database with global replication)
  • KV (key-value store)
  • Pages (static hosting + functions)
  • Durable Objects (stateful compute)
  • Browser Rendering (headless browser automation)

Cost Profile: Pay-per-request, generous free tier, zero egress fees

When to Use Docker

Best For:

  • Local development consistency
  • Microservices architectures
  • Multi-language stack applications
  • Traditional VPS/VM deployments
  • Kubernetes orchestration
  • CI/CD build environments
  • Database containerization (dev/test)

Key Capabilities:

  • Application isolation and portability
  • Multi-stage builds for optimization
  • Docker Compose for multi-container apps
  • Volume management for data persistence
  • Network configuration and service discovery
  • Cross-platform compatibility (amd64, arm64)

Cost Profile: Infrastructure cost only (compute + storage)

When to Use Google Cloud

Best For:

  • Enterprise-scale applications
  • Data analytics and ML pipelines (BigQuery, Vertex AI)
  • Hybrid/multi-cloud deployments
  • Kubernetes at scale (GKE)
  • Managed databases (Cloud SQL, Firestore, Spanner)
  • Complex IAM and compliance requirements

Key Services:

  • Compute Engine (VMs)
  • GKE (managed Kubernetes)
  • Cloud Run (containerized serverless)
  • App Engine (PaaS)
  • Cloud Storage (object storage)
  • Cloud SQL (managed databases)

Cost Profile: Varied pricing, sustained use discounts, committed use contracts

Quick Start

Cloudflare Workers

# Install Wrangler CLI
npm install -g wrangler

# Create and deploy Worker
wrangler init my-worker
cd my-worker
wrangler deploy

See: references/cloudflare-workers-basics.md

Docker Container

# Create Dockerfile
cat > Dockerfile <<EOF
FROM node:20-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --production
COPY . .
EXPOSE 3000
CMD ["node", "server.js"]
EOF

# Build and run
docker build -t myapp .
docker run -p 3000:3000 myapp

See: references/docker-basics.md

Google Cloud Deployment

# Install and authenticate
curl https://sdk.cloud.google.com | bash
gcloud init
gcloud auth login

# Deploy to Cloud Run
gcloud run deploy my-service \
  --image gcr.io/project/image \
  --region us-central1

See: references/gcloud-platform.md

Reference Navigation

Cloudflare Platform

  • cloudflare-platform.md - Edge computing overview, key components
  • cloudflare-workers-basics.md - Getting started, handler types, basic patterns
  • cloudflare-workers-advanced.md - Advanced patterns, performance, optimization
  • cloudflare-workers-apis.md - Runtime APIs, bindings, integrations
  • cloudflare-r2-storage.md - R2 object storage, S3 compatibility, best practices
  • cloudflare-d1-kv.md - D1 SQLite database, KV store, use cases
  • browser-rendering.md - Puppeteer/Playwright automation on Cloudflare

Docker Containerization

  • docker-basics.md - Core concepts, Dockerfile, images, containers
  • docker-compose.md - Multi-container apps, networking, volumes

Google Cloud Platform

  • gcloud-platform.md - GCP overview, gcloud CLI, authentication
  • gcloud-services.md - Compute Engine, GKE, Cloud Run, App Engine

Python Utilities

  • scripts/cloudflare-deploy.py - Automate Cloudflare Worker deployments
  • scripts/docker-optimize.py - Analyze and optimize Dockerfiles

Common Workflows

Edge + Container Hybrid

# Cloudflare Workers (API Gateway)
# -> Docker containers on Cloud Run (Backend Services)
# -> R2 (Object Storage)

# Benefits:
# - Edge caching and routing
# - Containerized business logic
# - Global distribution

Multi-Stage Docker Build

# Build stage
FROM node:20-alpine AS build
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build

# Production stage
FROM node:20-alpine
WORKDIR /app
COPY --from=build /app/dist ./dist
COPY --from=build /app/node_modules ./node_modules
USER node
CMD ["node", "dist/server.js"]

CI/CD Pipeline Pattern

# 1. Build: Docker multi-stage build
# 2. Test: Run tests in container
# 3. Push: Push to registry (GCR, Docker Hub)
# 4. Deploy: Deploy to Cloudflare Workers / Cloud Run
# 5. Verify: Health checks and smoke tests

Best Practices

Security

  • Run containers as non-root user
  • Use service account impersonation (GCP)
  • Store secrets in environment variables, not code
  • Scan images for vulnerabilities (Docker Scout)
  • Use API tokens with minimal permissions

Performance

  • Multi-stage Docker builds to reduce image size
  • Edge caching with Cloudflare KV
  • Use R2 for zero egress cost storage
  • Implement health checks for containers
  • Set appropriate timeouts and resource limits

Cost Optimization

  • Use Cloudflare R2 instead of S3 for large egress
  • Implement caching strategies (edge + KV)
  • Right-size container resources
  • Use sustained use discounts (GCP)
  • Monitor usage with cloud provider dashboards

Development

  • Use Docker Compose for local development
  • Wrangler dev for local Worker testing
  • Named gcloud configurations for multi-environment
  • Version control infrastructure code
  • Implement automated testing in CI/CD

Decision Matrix

| Need | Choose | |------|--------| | Sub-50ms latency globally | Cloudflare Workers | | Large file storage (zero egress) | Cloudflare R2 | | SQL database (global reads) | Cloudflare D1 | | Containerized workloads | Docker + Cloud Run/GKE | | Enterprise Kubernetes | GKE | | Managed relational DB | Cloud SQL | | Static site + API | Cloudflare Pages | | WebSocket/real-time | Cloudflare Durable Objects | | ML/AI pipelines | GCP Vertex AI | | Browser automation | Cloudflare Browser Rendering |

Resources

  • Cloudflare Docs: https://developers.cloudflare.com
  • Docker Docs: https://docs.docker.com
  • GCP Docs: https://cloud.google.com/docs
  • Wrangler CLI: https://developers.cloudflare.com/workers/wrangler/
  • gcloud CLI: https://cloud.google.com/sdk/gcloud

Implementation Checklist

Cloudflare Workers

  • [ ] Install Wrangler CLI
  • [ ] Create Worker project
  • [ ] Configure wrangler.toml (bindings, routes)
  • [ ] Test locally with wrangler dev
  • [ ] Deploy with wrangler deploy

Docker

  • [ ] Write Dockerfile with multi-stage builds
  • [ ] Create .dockerignore file
  • [ ] Test build locally
  • [ ] Push to registry
  • [ ] Deploy to target platform

Google Cloud

  • [ ] Install gcloud CLI
  • [ ] Authenticate with service account
  • [ ] Create project and enable APIs
  • [ ] Configure IAM permissions
  • [ ] Deploy and monitor resources