从bash脚本运行`docker run`失败。命令在命令行上不会失败

马修·霍根(Matthew Hoggan)

如果我从命令行运行以下命令。

docker run -t repo:tag ls -l

命令成功就可以了。但是,如果我在bash脚本中调用相同的命令,则会出现以下错误:

泊坞窗:来自守护程序的错误响应:OCI运行时创建失败:container_linux.go:348:启动容器进程导致“ exec:\” ls -l \”:在$ PATH中找不到可执行文件”:未知。

bash脚本导致此错误怎么办?

丹尼尔·法瑞尔

“ exec:\“ ls -l \”:在$ PATH中找不到可执行文件”

从错误中我可以看出,当您调用docker时,您将以某种方式将ls -l空格作为参数进行调用。就像是,

docker run -t repo:tag "ls -l" # wrong

也许

cmd="ls -l" 
docker run -t repo:tag "$cmd" # wrong

解析docker命令的外壳程序必须将ls-l作为单独的参数使用,以便将参数-lls可执行文件名区分开

cmd="ls -l" 
docker run -t repo:tag $cmd #works

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

docker run的命令行参数

在命令行上运行cmd时,npm run cmd失败

Docker Toolbox Mac命令行和Kitematics失败

从命令行运行Python时,导入urllib.parse失败

在命令行上运行XQuery

VSTS docker任务在docker RUN命令中的'&&'令牌上失败

ack在cronjob中失败,但可以从命令行正常运行

在命令行脚本上停止nolio部署失败

测试在命令行上运行,在Scala-IDE中失败

从PHP进行查询时,SQL的UPDATE请求失败,但在SQL命令行上运行良好

为什么从命令行运行时导入失败,而从PyCharm运行则导入成功?

在命令行中运行命令时,系统SSH隧道服务失败

此tar命令在命令行上有效,但在脚本中失败

bash:在cron作业中使用scp失败,但是从命令行运行时成功运行

DNS无法在命令行上运行

在cron上运行的bash脚本使某些命令失败

为什么在bash脚本vs bash命令行中运行相同的sed regex(在grep之后)失败?

升级到Xcode 5.1后,从命令行运行单元测试失败

junit失败,但通过maven命令行运行时通过

如何检测从命令行运行的Web Performance Test的失败

在命令行上运行zip

XRandR脚本从命令行正确运行,作为cron作业失败

在命令行上运行appium测试

Bash脚本在命令行起作用的地方失败

在命令行上解析有效,但在shell脚本中失败

Ruby 脚本在命令行上运行良好,但在 Jenkins 中失败

Gradle - 从命令行运行时 Corda 流测试失败

尝试在 ZX 命令行上运行 .mjs 脚本

PowerShell:从 Visual Studio Code Works 运行脚本,从 PS 命令行运行失败