Docker -compose: Ошибка: не удается найти модуль './userInternal' - npm установка прошла успешно, но приложение не удалось - PullRequest
0 голосов
/ 06 апреля 2020

Работа над приложением, использующим MRE SDK. . Следует отметить, что в последней версии есть некоторые проблемы со сборкой, если не для редактирования файла (удалите readonly из одного из классов node_module)

Приложение отлично работает при запуске через npm start, но Мне нужно было поместить его в контейнер docker с базой данных postgres. Ниже мой docker -compose.yml:

version: "3.7"
services:
  db:
    image: postgres:9.6-alpine
    environment:
      POSTGRES_USER: user
      POSTGRES_PASSWORD: pg_paassword
    networks:
      internal:
    volumes:
      - "dbdata:/var/lib/postgresql/data"
  app:
    build:
      context: .
      dockerfile: Dockerfile
    environment:
      PGUSER: user
      PGPASSWORD: pg_paassword
      PGHOST: db
    networks:
      internal:
    ports:
      - 3901:3901
networks:
  internal:
volumes:
  dbdata:

А вот мой dockerfile:

FROM node:10.16-alpine
WORKDIR /opt/mre

COPY package*.json ./
RUN ["npm", "install", "--unsafe-perm"]

COPY public ./public/

COPY tsconfig.json ./
COPY src/*.ts ./src/
COPY v0.16_mre_fix/* node_modules/@microsoft/mixed-reality-extension-sdk/built/animation/
RUN ["npm", "run", "build"]

EXPOSE 3901/tcp
CMD ["npm", "start"]

К сожалению, хотя docker-compose build прогрессирует без проблем, docker-compose up только что выиграл беру:

Error: Cannot find module './userInternal'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
    at Function.Module._load (internal/modules/cjs/loader.js:562:25)
    at Module.require (internal/modules/cjs/loader.js:692:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.<anonymous> (/opt/mre/node_modules/@microsoft/mixed-reality-extension-sdk/built/user/user.js:9:24)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)

Я не уверен, что делать; папка node_modules есть, по крайней мере, в самой папке проекта. Так же как и 1018 *. Я что-то пропустил?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...