プライベートDocker Registryの移行作業
古いプライベートDocker Registryサーバーを移行した。新サーバーには最新のイメージを使った。
Docker RegistryのバージョンV1系とV2系ではデータ構造に互換性がなく、イメージを1個ずつ旧サーバーからPull&新サーバーへPushしなくていはいけないらしい。 さすがにいちいちやってられないと思ったけど、移行ツールを見つけたので使うことにした。
だが、旧サーバーがV1ですらないのか、search APIでリポジトリ取得できなかったので移行ツールを改造して使った。 github.com
得られた知見
- 旧registryのバージョンを確認しようとしたが
latest
タグなのでわからなかった。latest
タグはあまり使わないほうがよい。 - 移行に結構時間がかかった。ほとんどのイメージのベースがubuntuだった。alpineとか使ってイメージのサイズを小さくなるようにしたほうがよい。