【发布时间】:2016-03-27 14:11:19
【问题描述】:
我不确定是否应该为我的 Node.js 应用程序创建不同的 Dockerfile 文件。一种用于没有开发依赖项的生产,另一种用于包含开发依赖项的测试。
或者一个基本上是开发Dockerfile.dev的文件。那么这两个文件的主要区别是 npm install 命令:
生产:
FROM ...
...
RUN npm install --quiet --production
...
CMD ...
开发/测试:
FROM ...
...
RUN npm install
...
CMD ...
问题出现是因为我希望能够通过docker run 命令在容器内运行我的测试。因此我需要测试依赖项(通常是我的开发依赖项)。
将生产中不需要的依赖项放入映像中似乎有点奇怪。另一方面,创建/维护第二个 Dockerfile.dev 只是微小的差异似乎也不正确。那么对于这类问题有什么好的做法呢。
【问题讨论】:
-
我只想说这里是所有的 Docker 文档。而且没有一个涉及测试。 docs.docker.com/search/?q=test
标签: docker npm dockerfile