Почему docker рабочий каталог не затронут - PullRequest
0 голосов
/ 26 февраля 2020

enter image description here

Как вы видите, у меня есть каталог с именем node-web-app внутри него, у меня есть два каталога

  • второй каталог с именем workdir
  • первый называется app, который содержит nodejs код, и я хочу докеризировать его

это мой Dockerfile

FROM node:10

WORKDIR /d/project/node-web-app/workdir

COPY package.json ./
COPY yarn.lock ./
RUN yarn

COPY . .

EXPOSE 8080

CMD [ "yarn", "start" ]

как я понимаю, эти команды COPY RUN CMD будут выполняться в указанном рабочем каталоге

(в моем случае рабочий каталог с именем workdir является вторым каталогом в node-web-app и его путь - /d/project/node-web-app/workdir)


, когда я собираю образ из этого Dockerfile, сборка выполнена успешно, после этого я проверил указанный рабочий каталог (/d/project/node-web-app/workdir). проблема в , в нем нет app файлов, которые должны быть скопированы с помощью команды COPY.

мой вопрос это проблема: ошибка в docker или мое понимание WORKDIR неверно?

Ответы [ 2 ]

1 голос
/ 26 февраля 2020

Все нормально с вашим файлом docker. Вам необходимо проверить содержимое контейнера docker

Сначала запустить контейнер

docker run -it -d --name test yourImage

Теперь получить доступ к контейнеру docker

docker exec -it test bash

теперь мы входим в docker файлы проверки контейнеров проекта в текущем каталоге

ls 

вы увидите файлы вашего проекта

0 голосов
/ 26 февраля 2020

Попробуйте ниже, это должно работать, так как оно находится в d: drive:

WORKDIR D:\\project\\node-web-app\\workdir 

ссылка: https://docs.microsoft.com/en-us/virtualization/windowscontainers/manage-docker/manage-windows-dockerfile

...