【问题标题】:Use dockerfile to build npm project使用 dockerfile 构建 npm 项目
【发布时间】:2019-08-19 17:37:12
【问题描述】:

我有像这样的 Dockerfile:

FROM node:10-alpine

RUN mkdir -p /home/node/app/node_modules && chown -R node:node /home/node/app

WORKDIR /home/node/app

COPY package*.json ./

USER node

RUN npm install

COPY --chown=node:node . .

RUN npm run build

我需要在本地驱动器上而不是在 docker 容器中的编译文件。 VOLUME 看起来我需要我想,但不知道怎么做,进行构建并共享这些构建文件。

有人可以帮助我吗?谢谢!

【问题讨论】:

  • 为什么不在本地的项目文件夹上运行npm run build
  • 出于某种原因(可能是因为 graalVM)在我的机器上构建需要永远,而在 dockerfile 中只需几秒钟 :)

标签: node.js docker npm


【解决方案1】:

假设您的 Dockerfile 中的 npm run build 生成了一个 build 目录,您确实可以使用卷在本地获取它

docker build -t <yourcontainername> .
docker run \
    -v ${PWD}/build:/home/node/app/build \
    -it <yourcontainername>

【讨论】:

    【解决方案2】:

    你可以使用

    docker cp <containerId>:/file/path/within/container /host/path/target
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-17
      • 2014-07-19
      • 1970-01-01
      • 1970-01-01
      • 2021-05-16
      相关资源
      最近更新 更多