我正在尝试将无人机与 gitlab 一起使用。在将 docker 镜像推送到我的私有(private)注册表的步骤之前,它会引发错误:
Successfully built 7afb99118ae2
Successfully tagged ae872a846df0d8df884e89bd3a77cacf49b8f7de:latest
+ /usr/local/bin/docker tag ae872a846df0d8df884e89bd3a77cacf49b8f7de :latest
Error parsing reference: ":latest" is not a valid repository/tag: invalid reference format
我的无人机是drone/drone:1.0.0-rc.3
这是我的 .drone.yml 文件
kind: pipeline
name: default
steps:
- name: build
image: python:3.6
commands:
- pip install -r requirements.txt
- python -m pytest app.py
when:
branch:
- master
event:
- push
- pull_request
- name: publish
image: plugins/docker
registry: registry.cn-beijing.aliyuncs.com
repo: registry.cn-beijing.aliyuncs.com/xxx/xxx
tags: latest
username:
- from_secret: ali_username
password:
- from_secret: ali_password
还有我的 Dockerfile
FROM python:3.6-alpine
RUN ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" > /etc/timezone
COPY requirements.txt /requirements.txt
RUN pip install -r /requirements.txt
ADD . /code
WORKDIR /code
CMD ["python", "app.py"]
我试过这样的:
tags: latest
tags: 1
tags: [1, 1.1]
tags: [1, 1.1, latest]
tags:
- latest
甚至删除
tags
行,但没有任何效果。它出什么问题了?感谢您的提示!
最佳答案
从你的 yml 文件中的某处 tag value
设置为空,但 docker tag
命令有 :
在指挥。
查看图像以生成上述错误。
我没有使用drone.io,但是您的 yml 文件中存在缩进或配置问题,标签在设置下,所以应该像
kind: pipeline
name: default
steps:
- name: docker
image: plugins/docker
settings:
username: kevinbacon
password: pa55word
repo: foo/bar
tags: latest
http://plugins.drone.io/drone-plugins/drone-docker/
关于docker - 无法在无人机 docker build : Error parsing reference: ":latest" is not a valid repository/tag: invalid reference format 上标记图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53968779/