Ich versuche ein Shell-Skript zu erstellen, um einen Andock-Container auszuführen und zu kämpfen. Mein Skript ist wie folgt:Andockfenster: ungültiges Referenzformat im Shell-Skript
#!/bin/bash
if [ "$1" == "" ]; then
echo "Usage > run.sh IMAGE NAME"
echo
echo "i.e. ./build.sh cd2:0.0.49"
exit
fi
echo $1
docker run -it --rm \
-e NODE_PATH='./src'\
-e NODE_HOST='0.0.0.0'\
-e NODE_ENV='production'\
-e DOCKER=true\
-e PORT='8080'\
-e STAGING=true\
-e SENDGRID_API_KEY='<redacted>'\
-p 8080:8080 $1
Wenn ich laufen: bash run.sh cd2:0.0.50
ich: docker: invalid reference format: repository name must be lowercase.
Auch wenn ich bash run.sh cd:0.0.50
es immer noch nicht (echo $1
Ergebnisse in cd2:0.0.50
).
Wenn ich docker run -it --rm -p 8080:8080 cd2:0.0.50
von der Kommandozeile ausführen es funktioniert ...
Kann jemand helfen?
Ich würde vorschlagen, dass die -e-Flags nicht korrekt analysiert werden und die Variable NOD_PATH als Bildname angezeigt wird. Was passiert, wenn Sie die -e Daten auslesen? –
@RamanSailopal Hmmm, es funktioniert ... – user1775718
Sie müssen nur Docker Run-Befehl neu anordnen. Ich habe eine Antwort geschrieben –