Docker推送错误,标记或引用无效
我有一个Travis CI构建,它正试图推送到docker注册表,以下是我在构建日志中看到的内容:Docker推送错误,标记或引用无效,docker,travis-ci,treescale,Docker,Travis Ci,Treescale,我有一个Travis CI构建,它正试图推送到docker注册表,以下是我在构建日志中看到的内容: [info] Built image repo.treescale.com/[secure]/inland24/plant-simulator:1.0-SNAPSHOT 但下一行,我会看到以下内容: Error parsing reference: "/:" is not a valid repository/tag: invalid reference format 这是我的docker p
[info] Built image repo.treescale.com/[secure]/inland24/plant-simulator:1.0-SNAPSHOT
但下一行,我会看到以下内容:
Error parsing reference: "/:" is not a valid repository/tag: invalid reference format
这是我的docker push命令:
docker push $DOCKER_REGISTRY_URL/$APPLICATION_NAME:$IMAGE_VERSION_DEV;
以下是参数:
- APPLICATION_NAME = [secure]/inland24/plant-simulator
- IMAGE_VERSION_DEV = 1.0-SNAPSHOT
- DOCKER_REGISTRY_URL = repo.treescale.com
假设[secure]已解析为正确的用户名!我得到的错误是什么?如何解决
我尝试列出所有映像,我可以看到我的映像存在于运行构建的本地计算机上:
REPOSITORY TAG IMAGE ID CREATED SIZE
repo.treescale.com/[secure]/inland24/plant-simulator 1.0-SNAPSHOT 34842cf7482e Less than a second ago 225 MB
anapsix/alpine-java 8_server-jre_unlimited bd197f461851 11 days ago 124 MB
不允许使用括号 发件人: 存储库名称被分解为路径组件。组件 存储库名称必须至少为一个小写字母数字 字符,可选地由句点、破折号或下划线分隔。 更严格地说,它必须匹配正则表达式 [a-z0-9]+(?:[.-][a-z0-9]+)*
你的错误清楚地说明了问题所在。您正在使用
docker push $DOCKER_REGISTRY_URL/$APPLICATION_NAME:$IMAGE_VERSION_DEV;
分析引用时出错:“/:”不是有效的存储库/标记:引用格式无效
如果我将所有环境变量都留空,那么
docker push /:
这给了我同样的错误。在docker推送之前使用env命令,并确保环境变量实际存在或不存在。如果没有,请找出原因我通过移动docker推到作业描述之外的位来修复此问题,如我的yml代码片段中所示:
jobs:
include:
- stage: test
script: sbt clean coverage test coverageReport
- stage: build docker image
script:
- if [ $TRAVIS_BRANCH == "master" ]; then
sbt docker:publishLocal;
docker images;
fi
after_script:
- if [ $TRAVIS_BRANCH == "master" ]; then echo "Completed building docker image";
docker login -u $DOCKER_REGISTRY_USERNAME -p $DOCKER_REGISTRY_PASSWORD $DOCKER_REGISTRY_URL;
docker push $DOCKER_APP_NAME;
fi
- echo $TRAVIS_BRANCH
所以早些时候,我在jobs stage脚本中使用了docker login和docker push命令,然后我将其移到了一个after脚本中,这个脚本完成了这个技巧 括号不是我给出的,而是我在Travis CI中相应地配置了用户名和密码!是的!这看起来像是travis的一个bug——环境变量没有传递出去!我与特拉维斯·西产生了一个问题-