docker:shell脚本中无效的引用格式

我正在尝试创建一个shell脚本来运行docker容器并且正在挣扎。我的脚本是这样的:

#!/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

当我跑步时: 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参数后面,因此请重新安排您的运行命令。

以上是 docker:shell脚本中无效的引用格式 的全部内容, 来源链接: utcz.com/qa/423796.html

回到顶部