Ich habe Schwierigkeiten mit der Aktivierung von Docker für Build-Job. Dies ist, wie Gitlab ci config-Datei wie folgt aussieht:Aktivieren docker für gitlab ci community edition
image: docker:latest
services:
- docker:dind
stages:
- build
build:
image: java:8
stage: build
script:
- docker info
- docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN registry.gitlab.com/...
- sbt server/docker:publish
Und hier ist die Ausgabe von Job:
gitlab-ci-multi-runner 1.3.2 (0323456)
Using Docker executor with image java:8 ...
Pulling docker image docker:dind ...
Starting service docker:dind ...
Waiting for services to be up and running...
Pulling docker image java:8 ...
Running on runner-30dcea4b-project-1408237-concurrent-0 via runner-30dcea4b-machine-1470340415-c2bbfc45-digital-ocean-4gb...
Cloning repository...
Cloning into '/builds/.../...'...
Checking out 9ba87ff0 as master...
$ docker info
/bin/bash: line 42: docker: command not found
ERROR: Build failed: exit code 1
Irgendwelche Hinweise, warum Docker nicht gefunden wird?
Danke, es macht Sinn. Ist es möglich, eine Bühne mit sbt und docker gleichzeitig zur Verfügung zu haben? –
IMO, wenn Sie immer das neueste Bild von Docker benötigen, installieren Sie Java und sbt unter einem Container von Docker: neueste und Commit ein neues Bild daraus. Verwenden Sie das Bild als Quellpunkt in Ihrem CI-Skript. Dann können Sie überspringen, um ein anderes Bild (java: 8) auch unter Build aufzurufen. – VanagaS