在osx上,docker run -v $(pwd):...不会扩展

时间:2016-03-22 11:14:30

标签: macos docker

在OSX上,当运行docker容器并挂载当前目录时,表达式test():Promise<any> { return this.http.get(this._baseUrl + "myapi/example/145", this.getOptions()) //getOptions() is just creating three custom headers for //authentication and CSRF protection using signature .toPromise() .then(res => { this.logger.debug(res); if(res.headers.get("Content-Type").startsWith("image/")){ return res; } return res.json(); }) .catch(res => { this.logger.error(res); return res.json(); } ); } 不会扩展:

$(pwd)

在容器上,bash docker run -v $(pwd):/var/mydir image 仍为空。

我已经通过自制程序安装了bash-completion,并且还支持特定于docker的bash。

我在整个地方看到了在OSX上使用/var/mydir的示例,但我无法使其工作。

请注意,当前目录位于$(pwd)下,例如/Users

1 个答案:

答案 0 :(得分:1)

首先尝试测试它:

path=$(pwd); echo ${path}

如果可行,则可以添加docker命令:

path=$(pwd); docker run -v ${path}:/var/mydir image

另外,如果从主机shell(Mac)执行该命令,而不是docker机器shell(通过docker-machine ssh会话),请确保先执行eval "$(docker-machine env <machinename>)"