Этот проект представляет собой генератор docker-compose.yml файла на основе настроек приложения. Вот подробное описание:
Основное назначение
Автоматическое создание docker-compose.yml файла с подстановкой всех переменных окружения из конфигурации приложения.
Ключевые компоненты
1. ConfigurationComponent
- Назначение: Преобразует объекты конфигурации в строки переменных окружения
- Функциональность:
- Извлекает префикс переменных окружения из конфигурации Pydantic
- Генерирует строки в формате
VARIABLE_NAME: ${VARIABLE_NAME} - Добавляет комментарии с названиями классов конфигурации
2. Generator
- Назначение: Основной класс для генерации docker-compose файла
- Функциональность:
- Заменяет плейсхолдеры
[ENV]и[VERSION]в шаблоне - Сохраняет форматирование и отступы
- Записывает результат в файл
docker-compose.yml
- Заменяет плейсхолдеры
Особенности реализации
Автоматизация конфигурации
- Извлекает все переменные из объектов
BaseSettings - Сохраняет структуру и префиксы конфигурации
- Генерирует полный список переменных окружения
Преимущества подхода
- Синхронизация - версии и настройки всегда актуальны
- Безопасность - не хранит чувствительные данные в репозитории
- Автоматизация - исключает ручное редактирование
- Масштабируемость - легко добавлять новые сервисы и настройки
Проект полезен для CI/CD процессов, где требуется автоматическое создание docker-compose файлов с актуальными настройками окружения.
Metadata
Release files for compose-generator 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| compose_generator-0.2.1.tar.gz | 4.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| compose_generator-0.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 10.2 kB
Release files / compose_generator-0.2.1.tar.gz
| Download URL | compose_generator-0.2.1.tar.gz |
|---|---|
| Size | 4.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7aa8f676fa7b0b9da9e921ac8a354e36230c65fa2189e9950d951fe2cae4b62c
|
|
BLAKE2b-256 checksum How to use checksums |
eed0052bce408da33564a4456782bafbae9774885762e1cdd9291d1c9d74b2ea
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.2.1 CPython/3.12.10 Windows/11
|
Release files / compose_generator-0.2.1-py3-none-any.whl
| Download URL | compose_generator-0.2.1-py3-none-any.whl |
|---|---|
| Size | 6.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
fb3dee78bfac3070a4845473df3c31f249f1bec9155bfb04ad519a2b48a24b80
|
|
BLAKE2b-256 checksum How to use checksums |
7c90ab7bbdeb62ddb66a7268e75723be0e65531cf4284f0f93102420c8248551
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.2.1 CPython/3.12.10 Windows/11
|