https://astatochek.github.io/ssg-with-python/
Отчет по заданию 2.1: Настройка окружения и исследование
Настройка окружения
Я создал новое проектное окружение, используя uv, для быстрого управления зависимостями в Python. В рамках этого проекта был установлен MkDocs, инструмент для создания документации, который генерирует статический сайт из файлов MD. Я запустил mkdocs new .
для инициализации базовой структуры документации в корне проекта. Все изменения были зафиксированы и отправлены в GitHub-репозиторий.
Настройка GitHub Actions
Для автоматического деплоя документации настроен CI/CD-процесс. Для этого:
1. В настройках репозитория подключен GitHub Pages.
2. Создан файл .github/workflows/deploy.yml
для установки Python, MkDocs, сборки сайта и его публикации при каждом push
в ветку main
.
Исследовательские вопросы
Отечественные CDN
В России существует ряд отечественных CDN, которые могут использоваться для ускорения доставки контента. Это помогает снизить задержки, так как контент кэшируется на серверах, расположенных географически близко к конечным пользователям. Примеры таких CDN: - Selectel - SberCloud - Yandex Cloud CDN
Gitverse и CI/CD
Gitverse — российская платформа для управления полным жизненным циклом разработки ПО. Она предоставляет возможности для CI/CD. Gitverse может быть использована для автоматизации процессов сборки, тестирования и развертывания, интегрируясь с репозиториями Git.
Варианты деплоя статического сайта
Деплой статического сайта можно выполнить несколькими способами. Основные варианты и инструменты включают: - GitHub Pages: развертывание прямо из репозитория GitHub. - Сервисы хостинга (например, Netlify или Vercel): автоматический деплой при каждом коммите в Git-репозиторий. - S3-подобные сервисы (Yandex Cloud Object Storage или Amazon S3): файлы сайта загружаются в хранилище, которое затем настраивается для статического хостинга. - Контейнеры (Docker): упаковка статического сайта в образ Docker с помощью веб-сервера, такого как Nginx. Этот образ можно развернуть на любом сервере с поддержкой Docker, например, на Yandex Cloud Container Registry и Yandex Cloud Container Optimized Image.