我想为不同的环境(Dev, Test和Prod)创建Docker映像。我确实创建了三个不同的dockerfile。
我发现以下两个选项来管理不同版本的图像在单个存储库或多个存储库。
Option 1: Build images with different tags and push it to the single docker repository?
Option 2: Create separate docker repository for each environment and push corresponding images?
我想知道什么是首选方案或其他的想法?
通常更倾向于为生产和开发/测试分别使用一个单独的注册表。
这样做的原因是开发人员可以推送到开发/测试注册表,而QA团队可以从那里提取非生产映像以进行持续的开发和测试。
这也有助于保持生产注册表的安全,并且当开发人员将它们推送到共享注册表时,还可以防止由于名称冲突而不必要的覆盖。