【发布时间】:2021-09-21 21:23:15
【问题描述】:
我的本地开发环境位于公司代理之后,使用我们自己的 Docker 注册表等。但是,我们部署在公共基础架构上,这意味着我们无法访问公司注册表,因此必须从公共注册表中提取(例如DockerHub)。
我有什么方法(例如通过环境变量)配置 Docker 在本地开发时从私有注册表中提取,在通过我们的 CI/CD 管道时从公共注册表中提取?
例如,假设我们正在部署一个 Node.JS 应用程序 - 在本地,我希望 FROM node:16 行被解释为 FROM corporate.proxy/node:16。
有几种方法可能会起作用 - 拥有两个独立的 Dockerfile,例如 Dockerfile.dev 和 Dockerfile.prod,或者将其包装在某种脚本中以进行更改。如果可能的话,我正在寻找一种通过 Docker 的配置来实现它的方法。
【问题讨论】:
标签: docker dockerfile