云原生CI/CD流水线设计
3 阅读
预计 3 分钟
云原生CI/CD流水线利用容器和Kubernetes实现可复现、可扩展的构建部署。
## GitHub Actions + Kubernetes
```yaml
name: CI/CD Pipeline
on:
push:
branches: [main]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: go test ./...
build:
needs: test
steps:
- name: Build and push
uses: docker/build-push-action@v5
deploy:
needs: build
steps:
- name: Deploy to K8s
run: kubectl set image deployment/myapp myapp=registry.example.com/myapp:${{ github.sha }}
```
## 最佳实践
- 镜像标签使用Git SHA而非latest
- 多环境使用Kustomize overlay
- Secret使用外部管理工具
- 流水线与GitOps结合
云原生CI/CD的核心:一切皆代码、一切可复现、一切可回滚。
0 条评论 欢迎参与讨论