SuperAPI AI 工具集

docker-cicd

部署与运维

查看项目

更新于 10-15 21:48

技能介绍

用途:指导将 Docker 集成进自动化构建、测试与部署流水线,适合在用户提及 docker CI/CD、GitHub Actions docker、Jenkins docker、buildx、多平台构建、Docker Build Cloud 或镜像构建流水线时使用。

主要能力:GitHub Actions 集成,含 docker/setup-buildx-action、docker/login-action、docker/build-push-action 的构建推送流程与 gha 缓存(cache-from/cache-to);buildx 多平台构建,如 platforms: linux/amd64,linux/arm64;Jenkins Pipeline 的 build/test/push 三阶段与 withDockerRegistry 凭据;CI 层缓存,通过 docker pull 预热、--cache-from 与 BUILDKIT_INLINE_CACHE=1 复用层。

推荐流程:配置 CI 环境(登录与 setup-buildx)、构建镜像并利用仓库缓存、用 Docker Scout 做安全扫描与策略门禁、以 semver+sha+latest 多标签推送、由 ArgoCD/Flux 监听仓库变更自动部署。

必要用法示例:docker pull $IMAGE:latest || true;docker build --cache-from $IMAGE:latest --build-arg BUILDKIT_INLINE_CACHE=1 -t $IMAGE:$TAG .;docker buildx build --secret id=npmrc,src=$HOME/.npmrc。

常见陷阱:无 --cache-from 时 CI 每次从头构建;构建密钥可能进日志,须用 --secret 与 CI 掩码;多阶段构建可能耗尽 CI 磁盘,可用 docker system prune -af、docker system df;AMD 上 QEMU 模拟 ARM 较慢,建议原生 ARM runner 或 Docker Build Cloud。

安全与稳定:不要把仓库凭据硬编码进 CI 配置,使用 CI 密钥管理器;云仓库认证优先用 OIDC;推送生产前用 Docker Scout 扫描;用 SHA 摘要打标签便于审计,如 image:sha-${GITHUB_SHA::7};定期轮换令牌,避免个人访问令牌。

限制与边界:Docker Build Cloud 加速需付费订阅;非 GitHub/Jenkins 的 CI 需自行适配通用模式。Dockerfile 编写、K8s 部署(ArgoCD/Flux)、CI 平台搭建(如 Jenkins 安装)属超范围,应分别使用 docker-build、K8s 部署技能与 DevOps 基础设施方案;安全扫描用 docker-security/docker-scout,生产部署用 docker-production,仓库管理用 docker-hub。