【问题标题】:How does one build an spa with webpack when deploying Docker container to Heroku将 Docker 容器部署到 Heroku 时如何使用 webpack 构建 spa
【发布时间】:2018-08-12 11:29:27
【问题描述】:

我正在开发一个 Aurelia 单页应用程序,它将与使用 Django Rest Framework 构建的 REST api 对话。

如果没有容器,我将有两个构建包,一个用于在 package.json 文件中运行脚本的 Node,另一个用于构建 Django 应用程序的 Python。

如果我推送一个容器镜像,那么什么机制替代了节点 buildpack 调用 package.json 中的脚本来触发 webpack 创建资产包?

【问题讨论】:

    标签: django docker heroku aurelia


    【解决方案1】:

    什么机制替代了调用package.json中脚本的node buildpack

    你并没有真正提供任何关于你当前设置和你已经尝试过的信息,所以我假设你已经知道如何在 heroku 上运行 docker,并且你已经让你当前的设置在 heroku 上工作而无需码头工人。

    如果您的 package.json 中有一个名为 build 的脚本启动 webpack 构建,并且 start 启动了一个 node.js express 应用程序以从 webpack 输出文件夹为您的应用程序提供服务,那么您d 在你的 Dockerfile 中做这样的事情:

    FROM node:8.9.4
    
    RUN npm install
    RUN npm run build
    
    CMD npm run start
    

    当然,这不考虑您可能需要进行的任何复制和权限设置,但这取决于您的项目设置。

    重要的一点是,您实际上是将事物作为节点应用程序运行,并且您需要 package.json 中的适当脚本,您可以将构建和运行委托给这些脚本,因此您只需要调用一两个来自您的 Dockerfile 的那些脚本。你不想直接在那里做太多的 npm 东西。

    【讨论】:

      猜你喜欢
      • 2019-08-24
      • 2018-02-05
      • 2017-10-17
      • 2016-07-13
      • 1970-01-01
      • 2022-01-23
      • 2021-07-21
      • 2022-06-22
      • 1970-01-01
      相关资源
      最近更新 更多