gpt4 book ai didi

node.js - 在docker上部署Node.js代码的最佳方法,如何自动安装Node_modules?

转载 作者:行者123 更新时间:2023-12-02 21:01:17 25 4
gpt4 key购买 nike

假设以下简单的nodejs docker starter:

version: '3'
services:
node:
container_name: venko_node
image: node
restart: always
volumes:
- '../src:/usr/src/app/'
ports:
- '80:80'
links:
- mongo
working_dir: /usr/src/app
command: node index.js

如何确保在第一次运行中安装了node_module软件包?

我想在 npm install之前添加命令 node index.js,但是每次运行时它将尝试安装。这是个问题吗?如果我重新启动服务器并决定更新一堆软件包怎么办?

有更好的解决方案吗?如果没有,如何将 npm install放在 node index.js之前?

最佳答案

为了在镜像构建期间(而不是在容器启动时)运行npm install,您可能需要创建自己的Dockerfile,它可能如下所示:

FROM node

ADD . /usr/src/app
WORKDIR /usr/src/app

RUN npm install

CMD node index.js

然后在docker-compose配置中,您需要定义build context,即 Dockerfile所在的目录。例如,如果docker-compose配置和 Dockerfile在同一目录中,则应解决 .的设置上下文:
version: '3'
services:
node:
build:
context: '.'
container_name: venko_node
restart: always
ports:
- '80:80'

关于node.js - 在docker上部署Node.js代码的最佳方法,如何自动安装Node_modules?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60230100/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com