2016-07-21 13 views
6

Używam plugin Kubernetes Jenkins do orkiestrować Jenkins niewolnikówJenkins: bieganie docker poleceń na niewolnika Döcker

chcę uruchomić wszystkie zadania Döcker (build obrazów Döcker i wykonać testy/buduje w docker).

przykład Jenkins praca:

docker run -e NEXUS_USERNAME=${NEXUS_USERNAME} -e NEXUS_PASSWORD=${NEXUS_PASSWORD} common-dropwizard:latest mvn deploy 

Używam jenkinsci/jnlp-slave stąd: https://hub.docker.com/r/jenkinsci/jnlp-slave/

Niestety, obraz slave nie wydaje się, aby wspierać prowadzenie dokowane. Moje pytanie brzmi: jakie jest najlepsze podejście, aby to osiągnąć?

dzięki

Odpowiedz

3

Musisz zainstalować klienta Döcker i zamontować gniazdo Döcker, dzięki czemu można uzyskać dostęp do hosta Docker. Następnie można wchodzić w interakcje z tego hosta Docker

https://jpetazzo.github.io/2015/09/03/do-not-use-docker-in-docker-for-ci/ https://github.com/jenkinsci/docker-workflow-plugin/tree/master/demo

+0

DinD prawdopodobnie nie jest potrzebny ... montażu gniazda poprzez '-v /var/run/docker.sock:/var/run/docker.sock 'działa dobrze. Zauważ, że prawdopodobnie będziesz musiał przekazać flagę --privileged = true. –

+0

Próbuję również uruchamiać komendy dokera, ale odwzorowanie pliku docker.sock i ustawienia true nie działały. Próbowałem zarówno konfiguracji panelu w JASKINIA deski rozdzielczej i przy użyciu funkcji podtemplate potoku. Fragment mojego pliku JenkinsFile (https://gist.github.com/otaviosoares/fc132dcb863e75161431ed00b95f06ba) Obraz, którego używam, jest oparty na jenkinsci/jnlp-slave z zainstalowanym git i docker. Błąd, który otrzymałem, to "dokowanie: nie znaleziono" Czy robię coś nie tak? Dziękuję – otaviosoares

+0

, a następnie dokowanie nie znajduje się w PATH lub coś w tym stylu. – csanchez

Powiązane problemy