我创建了Dockerfile来构建名为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}当我使用以下命令运行镜像时:
docker run -it -v <some-volume-mapping> aii它工作得很好(默认运行start-aii.sh的CMD命令)。现在,如果我试图覆盖这个默认行为,并隐式地使用相同的脚本运行镜像(并添加另一个参数),我会得到以下错误:
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.我也尝试过:只使用脚本(不带参数)
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有什么建议吗?
谢谢
发布于 2016-04-11 17:35:38
在使用脚本之前尝试启动bash,并使用--rm标志在作业结束后销毁实例,如下所示:
docker run -it --rm -v <some-volume-mapping> aii /bin/bash /usr/local/bin/start-aii.sh发布于 2016-09-05 18:28:46
有相同的问题,通过在文件顶部添加#!/bin/sh而不是其他注释来修复它。
https://stackoverflow.com/questions/36544293
复制相似问题