2016-04-11 17 views
5

Ho creato Dockerfile per creare la mia immagine chiamata aii.esecuzione docker [9] Errore di sistema: errore di formato exec

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} 

Quando eseguo l'immagine con il seguente comando:

docker run -it -v <some-volume-mapping> aii 

è funziona benissimo (funzionamento predefinito del comando CMD di start-aii.sh in esecuzione). Ora, se cerco di ignorare questo comportamento predefinito e per eseguire l'immagine con lo stesso script implicitamente (e aggiungere un altro arg) sto ottenendo il seguente errore:

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. 

Ho anche provato: solo lo script (senza argomento)

docker run -it -v <some-volume-mapping> aii start-aii.sh 

e il percorso completo di sceneggiatura

docker run -it -v <some-volume-mapping> aii /usr/local/bin/start-aii.sh 

ma lo stesso errore appaiono.

Un altro Info:

docker ps -a 
CONTAINER ID  IMAGE    COMMAND     CREATED    STATUS    PORTS    NAMES 
2488a4dd7014  aii     "start-aii.sh kafka"  3 seconds ago  Created         tiny_payne 

Qualche suggerimento?

Grazie

risposta

3

Provare ad avviare bash prima di usare lo script, e utilizzare il flag --rm al fine di distruggere l'istanza volta che il lavoro è finito, così:

docker run -it --rm -v <some-volume-mapping> aii /bin/bash /usr/local/bin/start-aii.sh 
+0

grazie per il suggerimento --rm, non lo sapevo .. Sto verificando il problema di bash, aggiornerò presto – ItayB

+0

Works! 10 volte tanto! – ItayB

4

avuto lo stesso problema, riparato aggiungendo #!/bin/sh nella parte superiore del file invece di avere altri commenti.

+0

Ottimo! Grazie per il consiglio ;-) – ItayB

Problemi correlati