Docker Push --all-tags 在管道中不起作用

Pet*_*nek 2 gitlab docker gitlab-ci

我正在尝试将管道中构建的映像推送到 Docker 注册表,并且我的映像上有两个标签(latestcommit hash),但是当使用该命令时docker push --all-tags registry.gitlab.com/group/image-name,它不起作用,并且出现此错误:

未知标志:--all-tags

我正在使用最新版本的 docker,GitLab CI/CD 阶段定义如下

Build Docker Image:
  stage: Build Docker Image
  image: docker:stable
  needs: ["Build & Test App"]
  services:
    - docker:dind
  script:
    - echo "$CI_REGISTRY_PASSWORD" | docker login "$CI_REGISTRY" -u "$CI_REGISTRY_USER" --password-stdin
    - docker build -t "$CI_REGISTRY_IMAGE:$CI_COMMIT_SHORT_SHA" .
    - docker tag "$CI_REGISTRY_IMAGE:$CI_COMMIT_SHORT_SHA" "$CI_REGISTRY_IMAGE:latest"
    - docker push --all-tags "$CI_REGISTRY_IMAGE"
Run Code Online (Sandbox Code Playgroud)

当我在本地计算机上尝试时,似乎这个标志是已知的并且它可以工作。你知道,可能是什么问题吗?多谢。

小智 5

使用时--all-tags请使用docker:latest图像

  • 最好指定使用哪个版本的 Docker,在本例中以第一个支持 --all-tags 的版本为准 (2认同)