【发布时间】:2016-01-15 21:09:12
【问题描述】:
我们有一个用 Angular 编写的应用程序
我们将使用 nginx 容器来托管 angular
但问题是我们必须执行npm install 来以角度创建 /dist 文件夹。
我们必须在我们的 nginx-webserver 的 dockerfile 中执行它还是违反规则?
【问题讨论】:
标签: angularjs nginx docker npm
我们有一个用 Angular 编写的应用程序
我们将使用 nginx 容器来托管 angular
但问题是我们必须执行npm install 来以角度创建 /dist 文件夹。
我们必须在我们的 nginx-webserver 的 dockerfile 中执行它还是违反规则?
【问题讨论】:
标签: angularjs nginx docker npm
您显然正在使用 node 作为您的开发服务器,并希望使用 NGINX 作为您的产品服务器?我们有类似的设置
这就是我们的做法......
在我们的开发环境中,我们在 .gitignore 上有 /dist
在推送到 git 时,我们有一个执行构建的 Jenkins 作业(这会在 Jenkins 构建服务器中安装 npm)
在成功的 Jenkins 作业中,我们执行 docker build(下游作业),docker build 将 /dist 文件复制到 docker 映像中
然后我们做一个 docker push
生成的 docker 映像可以从任何服务器中提取 - 希望对您有所帮助
欢迎您的想法:)
PS 在 docker 构建期间执行 npm install 的问题是您的 docker 容器变得混乱。您最终会在其中安装大量软件以进行设置。
你真正想要在你的 docker 镜像中的只是 NGINX 为你的构建文件提供服务。
这就是我们在 docker 构建期间不进行 npm 安装的原因。
【讨论】: