получить "npm ERR! enoent: нет такого файла или каталога" при отображении тома в docker-compose - PullRequest
0 голосов
/ 11 января 2019

У меня есть файл docker-compose, который состоит из пользовательского изображения для моего приложения и официального изображения монго. Он работает нормально, пока я не пытаюсь отобразить том для своего приложения, что я пытаюсь сделать для создания файла разработки docker-compose. У меня такое ощущение, что в моем файле docker-compose.dev.yml неправильно задана громкость. Я пытался установить громкость разными способами, но всегда получаю ошибку. Я не уверен, как мне сопоставить том, чтобы любые изменения, внесенные в код, были изменены в контейнере

Ниже приведен мой файл docker-compose.dev.yml, мой Dockerfile для моего приложения и мой файл package.json. Я также включу ошибку, которую я вижу

Спасибо за любую помощь, которую вы можете оказать

докер-compose.dev.yml

version: "3"
services:
  app:
    container_name: database
    restart: always
    build: .
    volumes:
      - ./:/usr/src/app
    ports:
      - "8080:8080"
    links:
      - mongo
  mongo:
    container_name: mongo
    image: mongo:4
    ports:
      - "27017:27017"

Dockerfile

FROM node:10

# Create app directory
WORKDIR /usr/src/app

# Install app dependencies
COPY package*.json ./

RUN npm install

# Bundle app source into container
COPY . .

EXPOSE 8080
CMD [ "npm", "start" ]

package.json

{
  "name": "database",
  "version": "0.0.0",
  "private": true,
  "scripts": {
    "start": "node ./bin/www"
  },
  "dependencies": {
    "cookie-parser": "~1.4.3",
    "debug": "~2.6.9",
    "express": "~4.16.0",
    "http-errors": "~1.6.2",
    "morgan": "~1.9.0",
    "pug": "2.0.0-beta11"
  }
}

Ошибка: я получаю ...

WARNING: Image for service app was built because it did not already exist. 
To rebuild this image you must use `docker-compose build` or `docker-compose up --build`.
Creating mongo ... done
Creating database ... done
Attaching to mongo, database
database | npm ERR! path /usr/src/app/package.json
database | npm ERR! code ENOENT
database | npm ERR! errno -2
database | npm ERR! syscall open
database | npm ERR! enoent ENOENT: no such file or directory, open 
'/usr/src/app/package.json'
database | npm ERR! enoent This is related to npm not being able to find a file.
database | npm ERR! enoent
database |
database | npm ERR! A complete log of this run can be found in:
database | npm ERR!     /root/.npm/_logs/2019-01-11T17_20_49_720Z-debug.log

1 Ответ

0 голосов
/ 14 января 2019

В моем docker-compose.dev.yml

неправильно указан объем

У меня было это как

- ./:/usr/src/app

Это должно было быть

- .:/usr/src/app
...