У меня есть простое приложение для узла со следующим Dockerfile:
FROM node:8-alpine
WORKDIR /home/my-app
COPY package.json .
COPY ./app ./app
COPY ./server.js ./
RUN rm -rf node_modules
RUN npm install \
npm run build
EXPOSE 3000
Когда я создаю образ с помощью: docker build -t my-app:latest .
, я пытаюсь запустить приложение, и он жалуется, что некоторые модули отсутствуют.
Когда я захожу в контейнер через docker run -i -t my-app:latest /bin/sh
, я вижу, что пакеты не были установлены.После ручного запуска npm install
в контейнере, похоже, работает.
Я могу только заключить, что из этого RUN npm install
не выполняется правильно внутри контейнера.