docker:shell脚本中的参考格式无效
我正在尝试创建一个shell脚本来运行一个码头集装箱,我正在挣扎。 我的脚本是这样的:
#!/bin/bash if [ "$1" == "" ]; then echo "Usage > run.sh IMAGE NAME" echo echo "ie ./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
当我运行: bash run.sh cd2:0.0.50
我得到: docker: invalid reference format: repository name must be lowercase.
即使我做bash run.sh cd:0.0.50
它仍然失败( echo $1
导致cd2:0.0.50
)。
如果我从命令行运行docker run -it --rm -p 8080:8080 cd2:0.0.50
它工作…
谁能帮忙?
docker run \ -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 --rm -it $1
图像名称应该在-it参数之后,因此重新安排您的运行命令。