Я пытаюсь создать конвейер, в котором образы докеров создаются с использованием 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 -u [имя пользователя] -p [пароль / токен]
Как бы мне ни понадобился .gitlab-ci.yml, который используетОбраз docker-in-docker, позволяющий запустить вход в Docker в моем скрипте?
Есть ли альтернатива использованию образа docker-in-docker для создания этого образа на моем Gitlab CI?