Я пытаюсь создать конвейер, в котором образы докеров создаются с помощью JIB (через подключаемый модуль Maven) и помещаются в мой реестр Gitlab.
Это отлично работает локально, поскольку я вошел в свой реестр докеров.
<plugin>
<groupId>com.google.cloud.tools</groupId>
<artifactId>jib-maven-plugin</artifactId>
<version>1.0.0</version>
<configuration>
<allowInsecureRegistries>true</allowInsecureRegistries>
<from>
<image>dockerhost/projectgroup/alpine</image>
</from>
<to>
<image>dockerhost/project/imagename:${project.version}</image>
</to>
<container>
<useCurrentTimestamp>true</useCurrentTimestamp>
</container>
</configuration>
</plugin>
Скажем, у меня есть .gitlab-ci.yml, который выглядит так:
stages:
- build_image
build_image:
stage: build_image
tags:
- dev
script: |
mvn compile jib:build
Теперь я получаю исключение при срабатывании конвейера
Build image failed: Failed to authenticate with registry dockerhost/projectgroup/alpine because: peer not authenticated
Я предполагаю, что получаю эту ошибку, потому что я не запускал docker login -u [имя пользователя] -p [пароль / токен]
Как вообще мне понадобится .gitlab-ci.yml, который использует образ докера в докере, чтобы иметь возможность запускать логин в докере в моем скрипте?
Есть ли альтернатива использованию образа docker-in-docker для создания этого образа на моем Gitlab CI?
dockerhost
место, откуда вы пытаетесь извлечь / нажать, на самом деле является движком Docker (локальным или удаленным). (2)peer not authenticated
- это проблема проверки сертификата SSL. - person Chanseok Oh   schedule 03.10.2019