首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Git sh.exe & Docker运行(没有这样的文件或目录)

Git sh.exe & Docker运行(没有这样的文件或目录)
EN

Stack Overflow用户
提问于 2021-08-15 21:28:00
回答 1查看 350关注 0票数 1

我遇到了一个令人费解的问题,似乎找不到解释。

  1. Run /usr/bin/sh.exe (这是Git提供的sh.exe )

docker run alpine:edge /bin/sh -c "echo AAA"

  1. 执行以下命令:

git-installation-path):docker: Error response from daemon: OCI runtime create failed: container_linux.go:380: starting container process caused: exec: "<git-installation-path>/usr/bin/sh": stat <git-installation-path>/usr/bin/sh: no such file or directory: unknown.

  1. 观察错误(为了提高可读性,我正在细分
  2. )

我不明白docker为什么要使用sh.exe的本地路径(来自Git安装的路径)

预期的结果是运行一个阿尔卑斯容器并在容器内执行命令/bin/sh -c "echo AAA"

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-08-15 21:39:40

在Git中使用的bash版本中,使用/的路径被重写为Windows路径。这是因为许多Windows程序不处理Unix样式的路径,这使得更多的程序正常工作。

但是,在您的示例中,这会导致将/bin/sh重写到到Windows可执行文件的路径中,如果将它传递给Linux容器,显然不希望如此。解决这个问题的方法是将斜杠(或至少是初始斜杠)加倍,这将告诉shell不要重写它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68795453

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档