Задачи проекта #12
Updated by Глеб Куприянов 4 days ago
**Цель** : Настроить автоматизированную сборку и развертывание простого приложения. 1. **Python** Python (Желательно 1.5 месяца): * Не нужно становиться гуру. Цель: уметь писать скрипты для автоматизации. * Основы синтаксиса, структуры, работа с файлами, библиотеками. **Задание** : Написать простой HTTP-сервер на Flask/Django, который выводит "Hello, World!" и некоторую системную информацию (например, время работы, hostname). 2. **Jenkins/GitLab CI** Jenkins/GitLab CI (1.5 месяца): * Изучите основы CI/CD: что такое пайплайн, этапы, шаги. * Установите Jenkins или создайте проект в GitLab. 3. **Проект** : Проект: Настройте пайплайн для вашего Python-приложения, который: ``` 3.1. Запускает тесты (пока можно простой pytest или даже echo "Tests passed"). ``` ``` 2.2. Собирает Docker-образ (изучите базовый Docker на этом этапе). ``` ``` 2.3.Пушит образ в Docker Hub/GitLab Registry. ``` 4. **Ansible** Ansible (1 месяц): * Основы: инвентарь, модули, playbook, роли. * Проект: Напишите playbook, который развертывает ваш Docker-образ с Python-приложением на одной из VPS. * Управляйте конфигурацией: установите Docker, настройте пользователей. **Итог квартала: Приложение, которое автоматически собирается по коммиту в Git и развертывается с помощью Ansible на сервер.**