簡體   English   中英

如何使用 docker-compose 設置節點

[英]how to setup node with docker-compose

我正在學習 docker 和 nodejs,我想用這兩個工具開始一個項目。

我想要實現的是在 docker 的構建階段安裝節點依賴項,然后通過 docker-compose 卷將 node_modules 文件夾復制到我的主機。

這是我的 Dockerfile:

FROM node:latest

COPY . /myproject/back/

WORKDIR /myproject/back/


RUN npm install --save-dev nodemon
RUN npm install --save \
  express \
  multer

CMD npm run dev

這是我的 docker-compose.yml:

version: "3.3"


services:

  back:
    build: ./back
    expose:
      - 3000
    ports:
      - "3000:3000"
    volumes:
      - ./back:/myproject/back

當我運行docker-compose build它時,它構建正確,但是當我運行docker-compose up我得到這個錯誤:

back_1  | > back@1.0.0 dev
back_1  | > nodemon main.js
back_1  |
back_1  | sh: 1: nodemon: not found
back_1  | npm ERR! code 127

我錯過了什么? 這是推薦的方法嗎?

理想情況下,Nodemon 應該只在您的開發環境中使用。 如果發生錯誤,您可以配置 dockercontainer 以重新啟動,從而放棄容器內對 Nodemon 的需要。

現在,如果您真的想讓 Nodemon 在 docker 中運行您的節點應用程序,那么您需要首先全局安裝 Nodemon:

將此RUN npm install --save-dev nodemonRUN npm install -g nodemon ,這將使命令nodemon在您的容器中可用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM