我正在尝试运行以下命令
docker run -p 3000:3000 -v/app/node_modules -v $(pwd):/app 2ef0206fcf99
我遇到以下错误
docker: Error response from daemon: create $(pwd): "$(pwd)" includes invalid characters for a local volume name, only "[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed. If you intended to pass a host directory, use absolute path.
如何解决此问题?
答案 0 :(得分:2)
1)使用Windows Powershell
,以下对我有用:
docker run --rm -it -v ${pwd}:/mydir nginx:latest bash
注意:
pwd
周围使用了花括号,而不是小括号 2)使用Git Bash
,可以使用以下语法:
winpty docker run --rm -it -v "/$PWD":/mydir nginx:latest bash
注意:
如果在命令开头不使用winpty
,则会收到错误消息:the input device is not a TTY. If you are using mintty, try prefixing the command with 'winpty'
还要注意/
之前的$PWD
。没有/
,它将不会引发错误,但是我注意到它没有安装目录。
答案 1 :(得分:2)
我在Windows上也遇到了同样的问题,请确保您将“ $ PWD”这样的东西放进去,这样您的命令应该是这样的
docker run --rm -it -p 3000:3000 -v "$PWD:/app" 2ef0206fcf99
或者另一种方式是
docker run --rm -it -p 3000:3000 --volume="$PWD:/app" 2ef0206fcf99