mcpField
D
devops

devops

github.com/jackspace云与 DevOps1648 次安装12 周前更新
代码仓库

关于 devops

devops 是一项涵盖 Cloudflare、Docker 和 Google Cloud Platform 的部署与基础设施管理技能,面向云平台和容器工作流。它提供平台选择指引,并涵盖 CI/CD、安全、性能和成本管理。

主要功能

  1. 01Cloudflare Workers 部署指引
  2. 02Docker 容器构建与管理
  3. 03Google Cloud 基础设施管理
  4. 04CI/CD 流水线模式
  5. 05云安全、性能与成本实践

适用场景

  1. 01将无服务器应用部署到 Cloudflare Workers
  2. 02使用 Docker 构建和部署容器化服务
  3. 03通过 gcloud 管理 Google Cloud 资源
  4. 04规划跨平台 CI/CD 与基础设施自动化

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/jackspace/claudeskillz --skill devops

安装后在 Claude Code 中输入/devops确认已加载。

附带文件.env.exampleSKILL.json

详细介绍

DevOps 技能

全面介绍如何在 Cloudflare 边缘平台、Docker 容器化环境和 Google Cloud Platform 上部署和管理云基础设施。

何时使用此技能

在以下情况使用此技能:

  • 将无服务器应用部署到 Cloudflare Workers
  • 使用 Docker 容器化应用
  • 使用 gcloud CLI 管理 Google Cloud 基础设施
  • 在不同平台上设置 CI/CD 流水线
  • 优化云基础设施成本
  • 实施多区域部署
  • 构建边缘优先架构
  • 使用 Kubernetes 管理容器编排
  • 配置云存储解决方案(R2、Cloud Storage)
  • 使用脚本和 IaC 自动化基础设施

平台选择指南

何时使用 Cloudflare

适用场景:

  • 面向边缘、全球分发的应用
  • 超低延迟要求(<50ms)
  • 带有无服务器函数的静态网站
  • 零出口流量费用场景(R2 存储)
  • WebSocket/实时应用(Durable Objects)
  • 边缘 AI/ML(Workers AI)

主要产品:

  • Workers(无服务器函数)
  • R2(对象存储,兼容 S3)
  • D1(具备全球复制功能的 SQLite 数据库)
  • KV(键值存储)
  • Pages(静态托管 + 函数)
  • Durable Objects(有状态计算)
  • Browser Rendering(无头浏览器自动化)

**成本模式:**按请求付费,免费层额度充足,零出口流量费用

何时使用 Docker

适用场景:

  • 保持本地开发环境一致
  • 微服务架构
  • 多语言技术栈应用
  • 传统 VPS/VM 部署
  • Kubernetes 编排
  • CI/CD 构建环境
  • 数据库容器化(开发/测试)

主要功能:

  • 应用隔离与可移植性
  • 用于优化的多阶段构建
  • 使用 Docker Compose 管理多容器应用
  • 使用卷管理实现数据持久化
  • 网络配置与服务发现
  • 跨平台兼容性(amd64、arm64)

**成本模式:**仅基础设施成本(计算 + 存储)

何时使用 Google Cloud

适用场景:

  • 企业级应用
  • 数据分析和 ML 流水线(BigQuery、Vertex AI)
  • 混合云/多云部署
  • 大规模 Kubernetes(GKE)
  • 托管数据库(Cloud SQL、Firestore、Spanner)
  • 复杂的 IAM 和合规要求

主要服务:

  • Compute Engine(VM)
  • GKE(托管 Kubernetes)
  • Cloud Run(容器化无服务器服务)
  • App Engine(PaaS)
  • Cloud Storage(对象存储)
  • Cloud SQL(托管数据库)

**成本模式:**定价方式多样,提供持续使用折扣和承诺使用合约

快速开始

Cloudflare Workers
# Install Wrangler CLI
npm install -g wrangler

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

参见:references/cloudflare-workers-basics.md

Docker 容器
# 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

参见:references/docker-basics.md

Google Cloud 部署
# 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

参见:references/gcloud-platform.md

参考文档导航

Cloudflare 平台
  • cloudflare-platform.md - 边缘计算概述、主要组件
  • cloudflare-workers-basics.md - 入门指南、处理程序类型、基本模式
  • cloudflare-workers-advanced.md - 高级模式、性能、优化
  • cloudflare-workers-apis.md - 运行时 API、绑定、集成
  • cloudflare-r2-storage.md - R2 对象存储、S3 兼容性、最佳实践
  • cloudflare-d1-kv.md - D1 SQLite 数据库、KV 存储、使用场景
  • browser-rendering.md - 在 Cloudflare 上使用 Puppeteer/Playwright 自动化
Docker 容器化
  • docker-basics.md - 核心概念、Dockerfile、镜像、容器
  • docker-compose.md - 多容器应用、网络、卷
Google Cloud Platform
  • gcloud-platform.md - GCP 概述、gcloud CLI、身份验证
  • gcloud-services.md - Compute Engine、GKE、Cloud Run、App Engine
Python 实用工具
  • scripts/cloudflare-deploy.py - 自动部署 Cloudflare Worker
  • scripts/docker-optimize.py - 分析和优化 Dockerfile

常见工作流

边缘 + 容器混合架构
# Cloudflare Workers (API Gateway)
# -> Docker containers on Cloud Run (Backend Services)
# -> R2 (Object Storage)

# Benefits:
# - Edge caching and routing
# - Containerized business logic
# - Global distribution
Docker 多阶段构建
# 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 流水线模式
# 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

最佳实践

安全性
  • 以非 root 用户运行容器
  • 使用服务账号模拟(GCP)
  • 将密钥存储在环境变量中,而非代码中
  • 扫描镜像中的漏洞(Docker Scout)
  • 使用权限最小化的 API 令牌
性能
  • 使用多阶段 Docker 构建来减小镜像体积
  • 使用 Cloudflare KV 进行边缘缓存
  • 使用 R2 存储,实现零出口流量成本
  • 为容器实现运行状况检查
  • 设置合适的超时和资源限制
成本优化
  • 大量出口流量场景下,使用 Cloudflare R2 代替 S3
  • 实施缓存策略(边缘缓存 + KV)
  • 为容器资源选择合适的规格
  • 使用持续使用折扣(GCP)
  • 使用云服务提供商的控制面板监控用量
开发
  • 使用 Docker Compose 进行本地开发
  • 使用 Wrangler dev 在本地测试 Worker
  • 使用命名的 gcloud 配置支持多环境
  • 对基础设施代码进行版本控制
  • 在 CI/CD 中实施自动化测试

决策矩阵

需求选择
全球延迟低于 50 msCloudflare Workers
大型文件存储(零出口流量)Cloudflare R2
SQL 数据库(全球读取)Cloudflare D1
容器化工作负载Docker + Cloud Run/GKE
企业级 KubernetesGKE
托管式关系型数据库Cloud SQL
静态网站 + APICloudflare Pages
WebSocket/实时通信Cloudflare Durable Objects
ML/AI 工作流GCP Vertex AI
浏览器自动化Cloudflare Browser Rendering

资源

实施清单

Cloudflare Workers
  • 安装 Wrangler CLI
  • 创建 Worker 项目
  • 配置 wrangler.toml(绑定、路由)
  • 使用 wrangler dev 在本地测试
  • 使用 wrangler deploy 部署
Docker
  • 编写采用多阶段构建的 Dockerfile
  • 创建 .dockerignore 文件
  • 在本地测试构建
  • 推送到镜像仓库
  • 部署到目标平台
Google Cloud
  • 安装 gcloud CLI
  • 使用服务账号进行身份验证
  • 创建项目并启用 API
  • 配置 IAM 权限
  • 部署并监控资源

评论

支持 Markdown