./app:/usr/src/app
                  
                  
                  
                  
                  
                  Также использую свой образ node
                  
                  
                  
                  
                  
                  Подскажите почему внутри dpckerfile не работает npm install?
                  
                  
                  
                  
                  
                  FROM node:14.15.4
                  
                  
                  
                  
                  
                  RUN apt-get update
                  
                  
                  
                  
                  
                  WORKDIR /usr/src/app
                  
                  
                  
                  
                  
                  RUN npm install
                  
                  
                  
                  
                  
                  ENTRYPOINT ["docker-entrypoint.sh"]
                  
                  
                  
                  
                  
                  EXPOSE 3000
                  
                  
                
Потому что тебе нужно использовать COPY в Dockerfile. Монтирование volume происходит не на этапе сборки, а на этапе запуска контейнера
А как-то можно это избежать на этапе разработки? Чтобы работать через смонтируемую область
в entrypoint делайте npm install
Ты можешь сделать отдельный Dockerfile.dev, где будет копироваться лишь package.json, а код будет монтироваться при запуске
Главное в prod образе так не делать
в проде это должен сделаться на одном из этапов при формировании образа конечного
FROM node:14.15.4 RUN apt-get update WORKDIR /usr/src/app COPY package*.json ./ RUN npm install ENTRYPOINT ["docker-entrypoint.sh"] EXPOSE 3000 И по прежнему зависимости не поставились(
так вы сверху на /usr/src/app с node_modules монтируете сам проект без node_modules
Обсуждают сегодня