【问题标题】:Should the Staging and Production Docker images be the same in Nuxt.js App?Nuxt.js 应用程序中的暂存和生产 Docker 映像是否应该相同?
【发布时间】:2020-04-06 22:32:46
【问题描述】:

我正在 docker 上开发应用 Nuxt.js(SPA 模式),我正在考虑将 nuxt 应用热部署到 staging 和生产环境。

按照 Docker 的风格,staging 和 production 应该使用同一个镜像,但是 Nuxt.js 在构建时会嵌入 env,所以每次都需要使用 staging 和 production 来构建。

如果您对是否应在每次部署 Nuxt 生产部署时都构建,或者是否最好使用常见的 staing 映像有任何最佳实践,请告诉我。

提前致谢。

【问题讨论】:

    标签: docker nuxt.js


    【解决方案1】:

    根据 Docker 的风格,staging 和 production 应该使用 相同的图像,但 Nuxt.js 在构建时嵌入了 env,所以它需要 每次都使用分期和生产构建。

    简答NO。

    .env 文件应在 git 中忽略,并在使用 docker 构建或手动写入生产环境之前在 CI 中填写机密。

    您可以同时使用两个 .env 文件:

    • .env
    • .env.prod

    将此添加到 nuxt.config.js 文件的顶部。

    const fs = require('fs'),
    path = require('path');
    
    if(process.env.NODE_ENV === 'production' && fs.existsSync('.env.prod')){
      require('dotenv').config({ path: path.join(__dirname, `.env.prod`)});
    } else{
      require('dotenv').config();
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-06-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多