Сделал я это для того чтобы собирать образы и пушить в локальный репо (`docker build …`, docker tag …, `docker push…`).
А проблема такая, в целом стандартная. Из под пользователя Jenkins нельзя пользоваться Docker (даже если делать -v /var/run/docker.sock:/var/run/docker.sock, т.к. файл с рутовыми пермишинами).
Т. е. я не могу выполнить команду в контейнере docker build ….
Причем это не работает ни в моем кастомном образе, куда я руками поставил докер, ни в скаченном h1kkan/jenkins-docker:lts
В итоге я решил проблему иначе, я в свой образ накатил sudo, поправил sudoers и дал возможность запускать sudo docker …. без пароля (видел решения, дать группу root пользователю Jenkins, но это как-то не очень) . Т.е. теперь я могу скачивать/запускать образы.
Вот теперь вопрос самый главный? А я не велосипед ли я сделал. У образа h1kkan/jenkins-docker:lts 10M скачиваний, видимо все как-то пользуются не жужжат и знают что-то, чего не знаю я.
Вторая мысль была взять и развернуть docker в docker и использовать как сборочный агент, например. Там бы это все было в root и нормально собиралось.
В общем, кто сталкивался и может рассказать как правильно? Или все ок что сделал? Не хочется 🚲
Привет. А ты читал сам гитхабовский репозиторий этого образа ? Пишут ли там что-то интересное?
Docker установлен там же, где и Jenkins? Как Jenkins подключается к докер-демону?
https://github.com/h1kkan/docker - красота. Оно заархивировано.
Обсуждают сегодня