跑 CI/CD 發生 Error 了 OMG …
最近在跑 CI/CD 的時候發生了 /bin/sh: htpasswd: not found
的問題
發生 /bin/sh: htpasswd: not found 的原因
研究了一下發現主要是在更新 registry:2.7 的時候移除了 apache2-utils
,而為什麼會移除呢?是因為 CVE-2020-1927 and CVE-2020-1934,如果想要看 Code 可以參考 commit,其實受到波及的人滿多的可以在 distribution-library-image#106 閱讀比較詳細的討論
解決方法
目前沒有看到什麼比較標準的解決方法,不過要讓目前的程式可以繼續跑可以先使用舊版的 Docker image 來解決,先止血吧 XD
FROM registry:2
修改成
FROM registry:2.6.2
參考資料
- https://hub.docker.com/_/registry?tab=tags
- https://github.com/docker/distribution-library-image/issues/106
- https://github.com/docker/distribution-library-image/commit/ab00e8dae12d4515ed259015eab771ec92e92dd4
- https://docs.docker.com/registry/deploying/#native-basic-auth
《AWS CDK 完全學習手冊:打造雲端基礎架構程式碼 IaC》
第 12 屆 iT 邦幫忙鐵人賽 DevOps 組冠的《用 CDK 定 義 AWS 架構》
第 11 屆 iT 邦幫忙鐵人賽《LINE bot 好好玩 30 天玩轉 LINE API》
一個熱愛分享的雲端工程師!