Я практикуюсь с докером, чтобы создать приложение с непрерывной доставкой.Я не могу найти правильное определение, где хранятся команды.
Это мой файл Docker:
FROM node:8
WORKDIR /app
COPY package.json /app
RUN npm install
COPY . /app
CMD node index.js
EXPOSE 3000
WORKDIR : это рабочий каталог в контейнере Docker или в моей Windows?
COPY : это должно скопировать приложение в рабочий каталог, как я прочитал.Хорошо, я понимаю, но что для этого нужно?Должен ли я определить свою заявку здесь?Например, на моем диске D: / drive
RUN : Хорошо, это устанавливает зависимости пакета.
COPY : Еще одна копия, это где я копирую путь от моего приложения до контейнера?
CMD : насколько я понимаю, приложение запускается, index.js;снова я должен определить абсолютный путь?
Сводка
Я хочу докеризировать свое приложение реагирования, которое находится, например, по этому пути: D: // storage / application
Это файловая структура моего приложения React:
application
└─ node_modules
└─ "some files"
└─ public
└─ index.html
└─ src
└─ index.js
└─ app.js
└─ Dockerfile
└─ package.json
└─ package-lock.json
Теперь, как мне определить Dockerfile в этом случае?Я вижу все файлы Docker с относительными путями, так как я могу это сделать?Поскольку в приведенном выше файле Docker есть ошибка:
D: \ storage \ application> docker run -p 3000: 3002 dockertest
module.js:550
throw err;
^ Error: Cannot find module '/app/index.js'
at Function.Module._resolveFilename (module.js:548:15)
at Function.Module._load (module.js:475:25)
at Function.Module.runMain (module.js:694:10)
at startup (bootstrap_node.js:204:16)
at bootstrap_node.js:625:3
Обновление после IgnacioРешение Миллана
хранилище \ приложение> Docker run -p 3000: 3002 dockert
/app/src/index.js:1 (function (exports, require, module, __filename, __dirname) { import React from 'react';
SyntaxError: Unexpected token import
at createScript (vm.js:80:10)
at Object.runInThisContext (vm.js:139:10)
at Module._compile (module.js:617:28)
at Object.Module._extensions..js (module.js:664:10)
at Module.load (module.js:566:32)
at tryModuleLoad (module.js:506:12)
at Function.Module._load (module.js:498:3)
at Function.Module.runMain (module.js:694:10)
at startup (bootstrap_node.js:204:16)
at bootstrap_node.js:625:3