【发布时间】:2019-08-30 18:39:12
【问题描述】:
我正在使用 Ruby on Rails 进行开发,并开始使用 Docker 进行部署一个月。
以下是我正在处理的步骤。
- 在我的笔记本电脑上开发
- 推送到 gitlab
- 构建包含测试和生产 gem 的单个映像
- 针对此图像运行 rspec
- (通过)推送到注册表,(失败)丢弃图像
通过这个工作流程,我将拥有一个包含所有测试、开发和生产 gem 的图像。
我从与许多人交谈中发现的工作流程
- 我的笔记本电脑上的开发人员
- 推送到 gitlab
- 构建测试映像(测试所需的所有 gem)
- 针对测试图像运行 rspec
- (通过)在没有测试 gem 的情况下构建另一个用于部署的映像并推送到 docker 注册表,(失败)丢弃该映像
使用这种方法,我认为它违反了 Docker 的目的(被测试的图像应该与将要部署的图像无关)。
如何指定和实施测试和推送生产映像的方法?
【问题讨论】:
标签: ruby-on-rails docker