【发布时间】:2021-01-04 00:17:44
【问题描述】:
我正在尝试使用以下命令在 Docker 容器中执行脚本:
docker exec <my-container> bash -c "/tmp/scripts/script.sh"
因此,我在 Windows 10 上使用 Git Bash。不幸的是,这会返回错误
bash: C:/Users/<windows-user>/AppData/Local/Temp/scripts/script.sh: No such file or directory
所以我可以很容易地得出结论,Git Bash 试图在主机 Windows 机器上找到脚本,而不是在容器内(这是预期的行为)。
同时,PowerShell按预期运行该命令——脚本在容器内执行。
这种行为可能是什么原因以及如何解决?
注意。我找到了解决方法:
commandtorun='bash -c "/tmp/scripts/script.sh"'
docker exec <my-container> $commandtorun
它奏效了。但我仍然对为什么初始命令不起作用感兴趣。
【问题讨论】: