Pushing the Same Image 3 Times to 3 Environments? CI/CD Artifact Promotion Pipeline Layered Design and 4 Production Decisions

Overview You’ve probably seen this release workflow: a developer builds a Docker image, tags it as dev, and pushes it to the dev registry. After testing passes, they re-tag it as staging and push it again. Finally, for production, they tag it as prod and push a third time. Same image, built once, pushed three times with three different tags. This seems fine — until one day you discover that the image validated in staging and the image running in prod are not the same artifact at all....

September 19, 2026 · 24 mins · 5110 words · Xu Baojin

Pushed an Image and Forgot About It? Harbor Artifact Repository: Permission Layering, Vulnerability Scanning, and 200GB Storage Governance

Overview 2 AM. Phone buzzed. Disk alert — 95%. Logged in and found the Harbor server’s /data/registry directory at 200GB, piled with 3,000+ tags. There was app:v0.0.3-beta from last year’s testing, app:feature-branch-xxx left over from failed builds, and ten copies of the same base image — each 800MB+. This isn’t an isolated case. I’ve seen the same script play out across multiple teams: once CI/CD is up and running, images get pushed but never cleaned....

September 3, 2026 · 15 mins · 3153 words · ABao