Commit 43037047 authored by Башун Владимир Владимирович's avatar Башун Владимир Владимирович
Browse files

day 3 task added

parent f73a35d0
No related merge requests found
Showing with 30 additions and 0 deletions
+30 -0
pics/invite.png

95 KB

task3.1.md 0 → 100644
# День 3, задание (расширенная настройка pipeline, автоматическая сборка docker)
Создать pipeline и добавить сборку проекта. Сделайте авто-сборку и выкладку образа, который вы настраивали в [первый день](https://forms.yandex.ru/u/64a39f7f3e9d08a0ba6da987/).
## Последовательность выполнения задания.
1. Создайте группу и проект внутри группы на сайте gitlab.com
2. ВАЖНО: Добавьте в group members аккаунт devsecops_service с правами maintainer (меню manage => members => invite_members)
Иначе проверяющий не сможет проверить выполнение задания
![img.png](pics/invite.png)
3. Предварительно необходимо настроить gitlab-runner в контейнере докер на своем компьютере и привязать его к проекту. Если вы еще этого не делали, сделайте [согласно инструкции](https://git.miem.hse.ru/devops_public/summerschool2023#%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0-gitlab-runner).
4. Настраиваем pipeline, создав .gitlab-ci.yml в ветке main. Добавьте в pipeline 3 этапа (stages): build, test, deploy и 3 задания (jobs): build_job, test_job, deploy_job
Они должны запускаться последовательно в этом порядке.
5. Настройте cache так, чтобы файл README, созданный на этапе build, был доступен так же в test и deploy. Сделайте на этапах build и test запись текстового сообщения в этот файл README (на каждом этапе build, test – добавлялось свое сообщение, которое в том числе содержало бы название этапа)
6. На этапе deploy (deploy job), необходимо сделать сборку приложения при помощи образа docker:20.10.16 и службы docker:20.10.16-dind. Соберите ваше приложение в контейнер и сделайте автоматический push на docker hub вашего образа.
7. Модифицируйте Dockerfile для образа так, чтобы файл README созданный в процессе pipeline, копировался внутрб контейнера при сборке.
8. Модифицируйте точку входа при запуске контейнера так, чтобы на экран выводилось содержимое файла README, созданного в процессе сборки контейнера.
Проверьте, что ваше приложение успешно выложено в docker hub с тегом **day3**.
Попробуйте запустить его с помощью docker run так, чтобы образ подтягивался из docker hub
(например, docker run MYAPP:day3)
В ответ на задание привести **ссылку на pipeline** с успешной сборкой приложения, а также **полную команду на запуск** вашего приложения в контейнере (docker run …).
Так же привести **ссылку на docker hub репозиторий** (должен быть доступен тег: day3).
После выполнения задания, ответ [загрузите в анкету](https://forms.yandex.ru/u/64aa72ecc769f16c25e370a2/)
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment