【问题标题】:Cannot specify current directory with docker run -v无法使用 docker run -v 指定当前目录
【发布时间】:2019-05-15 05:39:41
【问题描述】:

我正在尝试在 PowerShell 中执行以下 docker 命令,但我无法让它识别当前目录的 $(PWD)。请帮忙。

docker run -it -v $(PWD):/app --workdir /app samgentile\aspnetcore

我明白了:

C:\Program Files\Docker\Docker\Resources\bin\docker.exe: invalid reference format.
See 'C:\Program Files\Docker\Docker\Resources\bin\docker.exe run --help'.

【问题讨论】:

  • 可以去掉括号吗? $(PWD) -> "$PWD"
  • 这仍然给我同样的错误
  • 在那种情况下,我怀疑这不是问题所在。如果你在没有“-v ...”的情况下运行它,它会给出同样的错误吗?
  • 所以是图片名中的“\”。我认为它是“samgentile/aspnetcore”。可以试试吗?

标签: powershell docker


【解决方案1】:

您应该在图像名称中使用“/”而不是“\”:

docker run -it -v $PWD:/app --workdir /app samgentile/aspnetcore

【讨论】:

    【解决方案2】:

    Mihai 指出括号是正确的。这些表示您要运行命令PWD 并使用其输出,而没有括号的PWD 被视为变量。正确的调用将采用以下形式:

    docker run -it -v $(pwd):/app --workdir /app samgentile/aspnetcore
    

    或者:

    docker run -it -v $PWD:/app --workdir /app samgentile/aspnetcore
    

    【讨论】:

    • 这不是一个真正的答案,它更像是一个评论。请参阅 stackoverflow.com/help/how-to-answer
    • @michalhosna 这个问题并不是真正的问题,它更像是需求
    • @CameronNemo 如果您不喜欢这个问题,那么您不应该回答它。您可以随时发表评论、标记和所有这些。但是回答问题,你认为不好,不是最好的方法。不要误会,回答是 SO 上最重要的事情,但没有质量,数量是不够的。
    猜你喜欢
    • 2018-03-25
    • 1970-01-01
    • 1970-01-01
    • 2020-11-29
    • 1970-01-01
    • 2015-09-04
    • 1970-01-01
    • 2022-12-13
    • 2014-02-05
    相关资源
    最近更新 更多