У меня проблема с моей реализацией CI ...
У меня установлен сервер Jenkins и я создал конвейер сборки.
(Это из этого урока: https://getintodevops.com/blog/building-your-first-docker-image-with-jenkins-2-guide-for-developers)
Вот часть моего Jenkinsfile:
stage('Build image') {
app = docker.build("username/tag")
}
Поэтому, когда я бегу, я получаю следующую ошибку:
Touch Version 5.0 Copyright (c) 1995-2010 Embarcadero Technologies, Inc.
+ docker build -t username/tag .
Touch Version 5.0 Copyright (c) 1995-2010 Embarcadero Technologies, Inc.
Touch Version 5.0 Copyright (c) 1995-2010 Embarcadero Technologies, Inc.
Touch Version 5.0 Copyright (c) 1995-2010 Embarcadero Technologies, Inc.
error during connect: Post
: open //./pipe/docker_engine: Das System kann die angegebene Datei nicht finden. In the default daemon configuration on Windows, the docker client must be run elevated to connect. This error may also indicate that the docker daemon is not running.
Затем я проверил эту команду:
stage('Build image') {
sh 'eval $(docker-machine env default)'
app = docker.build("username/tag")
}
А потом я получаю этот вывод:
Error checking TLS Connection: Host is not running
Когда я бегу
stage('Build image') {
sh 'docker-machine ls'
app = docker.build("username/tag")
}
я получаю следующий вывод:
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
default - virtualbox Stopped Unknown
Но когда я запускаю 'docker-machine ls' на своей локальной консоли, я получаю следующий вывод:
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
default * virtualbox Running v18.09.0
Так что я не знаю, как сказать моему серверу Jenkins об использовании локальной установки докера ..
Я уже два дня ищу решения и не знаю, как его решить: /
Я использую Docker ToolBox в системе Windows 7.
Дженкинс установлен локально. НЕ в док-контейнере.
Может кто-нибудь сказать мне, что я делаю не так?