Docker - Docker жалуется при использовании $ PWD: в Windows 10 Pro - PullRequest
0 голосов
/ 21 марта 2020

Я учусь docker прямо сейчас и просто пытаюсь следовать их учебнику. Я уже нахожусь в топи c из Использование Bind Mounts , и я столкнулся с проблемой, которую я не могу найти решение. Я попытался выполнить следующую команду так же, как в учебнике,

docker run -dp 3000:3000 \ -w /app -v $PWD:/app \ node:12-alpine \ sh -c "yarn install && yarn run dev"

.., но он продолжает выдавать следующее сообщение об ошибке,

В строке: 1 символ: 39 + docker run -dp 3000: 3000 \ -w / app -v $ PWD: / app \ node: 12-alpine \ sh ... + ~~~~~ Недопустимая ссылка на переменную. ':' не сопровождалось допустимым символом имени переменной. Попробуйте использовать $ {} для разделения имени. + CategoryInfo: ParserError: (:) [], ParentContainsErrorRecordException + FullyQualifiedErrorId: InvalidVariableReferenceWithDrive

Я уже пробовал использовать следующие решения,

docker run -dp 3000:3000 \ -w /app -v ${PWD}:/app \ node:12-alpine \ sh -c "yarn install && run dev"
docker run -dp 3000:3000 \ -w /app -v "${PWD}:/app" \ node:12-alpine \ sh -c "yarn install && run dev"
docker run -dp 3000:3000 \ -w /app -v "${PWD}":/app \ node:12-alpine \ sh -c "yarn install && run dev"
docker run -dp 3000:3000 \ -w /app -v ${pwd}:/app \ node:12-alpine \ sh -c "yarn install && run dev"
docker run -dp 3000:3000 \ -w /app -v "${pwd}:/app" \ node:12-alpine \ sh -c "yarn install && run dev"
docker run -dp 3000:3000 \ -w /app -v "${pwd}":/app \ node:12-alpine \ sh -c "yarn install && run dev"

... но безрезультатно и Я просто вижу эту ошибку,

C: \ Program Files \ Docker \ Docker \ resources \ bin \ docker .exe: недопустимый формат ссылки. Смотрите 'C: \ Program Files \ Docker \ Docker \ resources \ bin \ docker .exe run --help'.

Буду признателен, если кто-то сможет мне помочь и направить меня решить это. :)

1 Ответ

0 голосов
/ 21 марта 2020

Пожалуйста, попробуйте следующую команду.

$ docker run -dp 3000:3000 -w /app -v ${PWD}:/app  node:12-alpine  sh -c "yarn install && run dev"

Вы должны удалить \, так как вы написали команду в одну строку.

\ чаще всего используется в подобных ситуациях (например, для облегчения читать длинную команду):

docker run -p 3000:3000 \
-w /app -v $PWD:/app \
node:12-alpine \
sh -c "yarn install && yarn run dev"
...