docker run [9]系统错误:exec格式错误 [英] docker run [9] System error: exec format error
问题描述
我创建了Dockerfile来构建名为aii的映像。
I created Dockerfile to build my image called aii.
FROM docker.io/centos:latest
#Set parameters
ENV BinDir /usr/local/bin
ENV RunFile start-aii.sh
ADD ${RunFile} ${BinDir}
#Some other stuff
...
CMD ${RunFile}
当我使用以下命令运行映像时:
When I run the image with the following command:
docker run -it -v <some-volume-mapping> aii
它的功能很棒(运行start-aii.sh的CMD命令的默认操作)。
现在,如果我尝试覆盖此默认行为并隐式地使用相同的脚本运行图像(并添加另一个arg),则会出现以下错误:
it's works great (default operation of running CMD command of start-aii.sh). Now, if I try to override this default behavior and to run the image with the same script implicitly (and add another arg) I'm getting the following error:
docker run -it -v <some-volume-mapping> aii start-aii.sh kafka
exec format error
docker: Error response from daemon: Cannot start container b3f4f3bde04d862eb8bc619ea55b7061ce78ace8f1984a12f6ec681877d7d926: [9] System error: exec format error.
我还尝试过:仅脚本(不带参数)
I also tried: only script (without argument)
docker run -it -v <some-volume-mapping> aii start-aii.sh
以及脚本的完整路径
docker run -it -v <some-volume-mapping> aii /usr/local/bin/start-aii.sh
,但出现相同的错误。
其他信息:
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2488a4dd7014 aii "start-aii.sh kafka" 3 seconds ago Created tiny_payne
有任何建议吗?
谢谢
推荐答案
尝试在使用脚本之前先启动bash,然后使用-rm
标志在作业结束后销毁实例,例如:
Try to start bash before using your script, and use the --rm
flag in order to destroy the instance once the job is ended, like that :
docker run -it --rm -v <some-volume-mapping> aii /bin/bash /usr/local/bin/start-aii.sh
这篇关于docker run [9]系统错误:exec格式错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!