Можно Ли Запустить Докер-Контейнер С Systemd Из Конвейера Дженкинса?

  • Автор темы AndreBir
  • Обновлено
  • 22, Oct 2024
  • #1

Мне не удалось запустить Docker-контейнер с systemd из конвейера Jenkins, не получив следующего сообщения об ошибке:

CMD

Трубопровод:

/usr/sbin/init

Кажется, что Дженкинс крадет любую опцию

cat
arg and putting in
CMD
. Это кажется глупым, потому что
pipeline {

agent {

docker {

image "centos/systemd"

args "--entrypoint='/usr/sbin/init' -u root -v /sys/fs/cgroup:/sys/fs/cgroup --privileged"

}

}

options {

ansiColor('xterm')

skipDefaultCheckout(true)

timestamps ()

}

stages {

stage('Test systemctl') {

steps {

sh ' systemctl' }

}

}

}
needs to be the first thing run. Ideally as the
ERROR: The container started but didn't run the expected command. Please double check your ENTRYPOINT does execute the command passed as docker run argument, as required by official docker images (see https://github.com/docker-library/official-images#consistency for entrypoint consistency requirements).
Alternatively you can force image entrypoint to be disabled by adding option `--entrypoint=''`.
.

#docker #jenkins #jenkins-pipeline

AndreBir


Рег
27 May, 2006

Тем
79

Постов
173

Баллов
618
  • 25, Oct 2024
  • #2

Кажется, что Дженкинс крадет любой вариант аргумента CMD и помещает cat

Действительно, я думаю, что это является что делает Дженкинс. Все сводится к тому, как они разработали поддержку докеров. Контейнер запускается с помощью программы, которая ничего не делает, поэтому внутри него можно запускать различные команды через

docker exec
mechanisms. This is good for most use cases, because the command itself can fail without taking out the whole container with it.

Для вашего случая использования systemd, возможно, вам следует рассмотреть возможность использования поддержки контейнера Sidecar Jenkins: https://www.jenkins.io/doc/book/pipeline/docker/#running-sidecar-containers.

 

Angela69per


Рег
07 May, 2020

Тем
82

Постов
221

Баллов
661
Тем
403,760
Комментарии
400,028
Опыт
2,418,908

Интересно