ibm-ecosystem-engineering/Watson-NLP

Script generates error "invalid reference format"

deleeuwblue opened this issue · 2 comments

Tutorial: https://github.com/ibm-build-lab/Watson-NLP/tree/main/MLOps/Deploy-to-Code-Engine
Environment: I am testing with a Mac using zsh shell and docker
Problem description:

When I execute the commands:

REGISTRY=cp.icr.io/cp/ai
MODELS="cp.icr.io/cp/ai/watson-nlp_syntax_izumo_lang_en_stock:1.0.6 cp.icr.io/cp/ai/watson-nlp_syntax_izumo_lang_fr_stock:1.0.6"
for i in $MODELS
do
  image=${REGISTRY}/$i
  docker run -it --rm -e ACCEPT_LICENSE=true -v `pwd`/models:/app/models $image
done

I see this error response:

docker: invalid reference format.

If I change the script as follows, it works:

for i in watson-nlp_syntax_izumo_lang_en_stock:1.0.6 watson-nlp_syntax_izumo_lang_fr_stock:1.0.6
do
  image=${REGISTRY}/$i
  echo $image
  docker run -it --rm -e ACCEPT_LICENSE=true -v `pwd`/models:/app/models $image
done

Thanks Adam for opening this.

For zsh something like the following will work. I'll update the tutorial.

REGISTRY=cp.icr.io/cp/ai
MODELS="cp.icr.io/cp/ai/watson-nlp_syntax_izumo_lang_en_stock:1.0.6 cp.icr.io/cp/ai/watson-nlp_syntax_izumo_lang_fr_stock:1.0.6"
for i in $(echo "$MODELS")
do
  image=${REGISTRY}/$i
  docker run -it --rm -e ACCEPT_LICENSE=true -v `pwd`/models:/app/models $image
done

Fixed.