Результаты шагов Docker в файл журнала - Jenkins - PullRequest
0 голосов
/ 28 сентября 2018

Dockerfile содержит несколько шагов для создания и создания образа Docker.

Например, восстановление RUN dotnet, сборка RUN dotnet и публикация RUN dotnet.

Можно ли экспортировать результаты / ведение журнала каждый шаг в отдельный файл, который можно отобразить / отформатировать в несколько этапов Jenkins?

1 Ответ

0 голосов
/ 28 сентября 2018

Вы также можете экспортировать сборку Jenkins в файл журнала, используя этот плагин https://github.com/cboylan/jenkins-log-console-log.

Но если вы хотите просмотреть каждый журнал шагов в журнале консоли Jenkins, попробуйте этот способ.

Создайте задание и создайте образ докера из сценария bash и запустите этот сценарий из Jenkins.

 docker build --compress   --no-cache --build-arg DOCKER_ENV=staging --build-arg DOCKER_REPO="${docker_name}" -t "${docker_name}:${docker_tag}" .

Если вы запустите эту команду из Jenkins или создадите файл bash, вы увидите журналы каждого шага.как упомянуто ниже.Если вы ищете что-то еще, дайте мне знать.

Building in workspace /var/lib/jenkins/workspace/testlog
[testlog] $ /bin/sh -xe /tmp/jenkins8370164159405243093.sh
+ cd /opt/containers/
+ ./scripts/abode_docker.sh build alpine base
verifying docker name: alpine
Docker name verified
verify_config retval= 0
comparing props
LIST: alpine:3.7

Теперь каждый шаг будет отображаться под

http://jenkins.domain.com/job/testlog/1/console

    Step 1/5 : FROM alpine:3.7
Step 2/5 : COPY  id_rsa /root/.ssh/id_rsa
 ---> 6645bd2838c9
Step 3/5 : COPY supervisord.conf /etc/supervisord.conf
 ---> 635e37d9503e
.....
   Step 5/5 : ONBUILD RUN ls /usr/share/zoneinfo && cp /usr/share/zoneinfo/Europe/Brussels /etc/localtime && echo "US/Eastern" >  /etc/timezone && date
 ---> Running in 7b8517d90264
Removing intermediate container 7b8517d90264
 ---> 3ead0f40b7b4

Successfully built 3ead0f40b7b4
Successfully tagged alpine:3.7
...