Docker Images in CI bauen und in Registry pushen

Hallo zusammen,

in meinem aktuellen Projekt versuche ich ein Docker Image in der CI zu bauen und in die GitLab Container Registry zu pushen. Leider komme ich nicht weiter.

dind
Die ersten Versuche mit dind (siehe GitLab Container Registry | GitLab) schlugen leider fehl:

...
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

Auch viele Issues zu dem Thema haben nicht geholfen.

kaniko
Mit kaniko (siehe Use kaniko to build Docker images | GitLab) hatte ich ebenfalls keinen Erfolg. Timeout bei Version v1.9.0-debug und UNAUTHORIZED: authentication required Fehler in anderen Versionen.

Hat jemand eine Idee was ich tun kann um das Projekt als Docker Image zu bauen und in die GitLab Container Registry pushen kann? Vielleicht hat jemand ja auch eine funktionierende Pipeline die ich mir mal anschauen könnte.

Hallo Felix,

hast Du das Problem schon gelöst? Zu Lehrzwecken habe ich unserer Labor-Gitlab-Instanz ein kleines Projekt, das ein Docker-Image baut - gerne hier anschauen. An Konfiguration war dazu nötig, auf Gruppen-Ebene den Dependency-Proxy in Gitlab einzuschalten (hat nichts mit dem Docker-Image-Bau zu tun - nur für CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX im .gitlab-ci.yml erforderlich - und die Kopplung des Projekts (Settings → CI/CD → Runners) mit dem dind-Runner auf dem Build-Server.

Viele Grüße,
Herbert.

1 „Gefällt mir“

Hallo Herbert,

vielen Dank für deine Antwort. Leider konnte ich noch nicht richtig herausfinden wer wo das CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX setzen muss. Müsste das in meinem Fall vom Admin in der Smart-City-Muenster · GitLab Gruppe gemacht werden?

Viele Grüße
Felix

Ich habe das Problem inzwischen mit einer eigenen GitLab Runner Instanz gelöst

Hallo Felix,

ist sicherlich ein bisschen spät um Dir zu helfen, aber die kaniko-Variante funktioniert für uns sehr gut, auch mit den durch OpenCoDE bereitgestellten Runnern. Als Beispiel ein kürzlicher Job hier und das zugehörige CI-Manifest mit den builder_*-Jobs hier.

Grüße,
Adam