У меня возникли проблемы с запуском команды оболочки в контейнере Docker с декларативным конвейером Jenkins. используя плагин рабочего процесса докеров. Кажется, что он не может найти команду «cat», предлагая проблему с пути. Я ограничил задачу простой задачей (команда env shell) в очень простом изображении (альпийском) и проверил, что/bin/cat работает. В чем моя ошибка/непонимание?Плагин Workflow для докеров Jenkins выполняется без PATH
Обновлено: Я включаю всю команду, которую генерирует Дженкинс. Я не добавлял все эти дополнительные аргументы, по какой-то причине Дженкинс, кажется, вводит их вне моего контроля.
$ docker run -t -d -u 496:493 -w /jenkins/workspace/[email protected] -v /jenkins/workspace/[email protected]:/jenkins/workspace/[email protected]:rw -v /jenkins/workspace/[email protected]@tmp:/jenkins/workspace/[email protected]@tmp:rw -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** --entrypoint cat alpine
[Pipeline] // withDockerContainer
[Pipeline] }
[Pipeline] // node
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // withEnv
[Pipeline] }
[Pipeline] // withCredentials
[Pipeline] }
[Pipeline] // node
[Pipeline] }
[Pipeline] // withEnv
[Pipeline] End of Pipeline
java.io.IOException: Failed to run image 'alpine'. Error: docker: Error response from daemon: Container command 'cat' not found or does not exist..
at org.jenkinsci.plugins.docker.workflow.client.DockerClient.run(DockerClient.java:125)
А вот мой этап трубопровода:
stage("test") {
agent {
docker {
image 'alpine'
label 'docker-enabled'
}
}
steps {
sh 'env'
}
}
Если вы работаете в Linux, то каков результат 'cat/etc/issue'? – Avi
попробуйте запустить 'echo $ PATH', чтобы узнать, что это за путь. Если путь неверно установлен. 'Докер запустить --name ALP -dt альпийской cat' и' Докер EXEC ALP ш -с "окр" 'дает мне: ' HOSTNAME = a2b6eeb0788a SHLVL = 1 HOME =/корень PATH = /USR/местные/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin PWD =/ ' – Rik
Это специфический отказ Jenkins. Кошка находится на пути выполнения, когда я запускаю из командной строки. Запрашиваемые выход - '$ Докер пробег -id --entrypoint кошка альпийской 3719b36a40ecc36eada4674def442b2140f22ed2aec030390acd2ef838763722 $ Докер Exec 3719 кот/и т.д./вопрос Добро пожаловать в Alpine Linux 3.4 ядра \ г на \ т (\ л)' –