Свой Terraform Registry: как обойти блокировки и настроить корпоративный репозиторий
В современных реалиях доступ к официальному Terraform Registry напрямую ограничен, что создает проблемы для автоматизации и CI/CD-пайплайнов. Делимся записью вебинара c Дмитрием Куликовым, где разобрали, как поднять свое хранилище провайдеров: от «костылей» на ноутбуке до полноценного Nexus. Ниже небольшой конспект 👇🏼
Почему это важно?
🟢Санкции: HashiCorp ограничил доступ к официальному реестру для РФ еще в 2022 году
🟢Безопасность: в корпоративной среде важна единая точка контроля всех пакетов и образов
🟢Air-gap: возможность работы в полностью изолированных контурах без доступа в интернет
Вариант 1: локальное хранилище (для тестов) Если нужно быстро запустить проект локально:
🟢Сборка: скачиваем исходники провайдера и собираем бинарник через go build
🟢Структура: создаем папку ~/.terraform.d/plugins и строго соблюдаем иерархию путей (имя/версия/архитектура), иначе Terraform не увидит файл
🟢Конфиг: настраиваем файл .terraformrc, указывая filesystem_mirror, чтобы Terraform искал провайдеры в локальной папке
Вариант 2: корпоративный репозиторий в Nexus. Начиная с версии 3.89, Sonatype Nexus поддерживает Terraform-репозитории «из коробки». Ключевые нюансы настройки:
🟢HTTPS — это мастхэв: Terraform не умеет работать по HTTP
🟢Для тестов удобно использовать Caddy, который автоматически генерирует самоподписанные сертификаты
🟢GPG-подписи: чтобы Terraform не выдавал ошибок безопасности, в Nexus нужно добавить PGP-ключ для автоматического подписания провайдеров
🟢Авторизация: в Community-версии Nexus вместо API-токенов используется Basic Auth (логин/пароль в base64), прописанный в настройках провайдера
Итог: свой Registry — это надежный способ обеспечить стабильность CI/CD и безопасность ваших данных вне зависимости от внешних блокировок.
↘️
Смотреть в ВК
↘️
Смотреть в YouTube
Если хотите разобраться глубже, то ждем вас на новом
практикуме Nexus. Что конкретно вы проработаете на курсе:
🟢
Архитектура и внедрение: проектирование централизованных хранилищ на базе Sonatype Nexus 3 с нуля.
🟢
Docker под контролем: настройка корпоративного Docker Registry с SSL-терминацией и оптимизацией загрузки слоев для быстрой работы пайплайнов.
🟢
Экономия ресурсов: автоматизация жизненного цикла артефактов и тонкая настройка политик очистки, чтобы репозиторий не «съел» всё дисковое пространство
🟢
CI/CD и кэширование: интеграция Nexus в пайплайны для кэширования зависимостей (NPM, PyPI, Maven), что критически важно при работе в изолированных контурах
🟢
Безопасность Supply Chain: настройка Repository Health Check и аудит доступа для защиты от уязвимостей в сторонних пакетах.
🟢
Infrastructure as Code: разработка Groovy-скриптов для автоматического Provisioning-а репозиториев и управления пользователями.
🟢
Надежность: настройка стратегий резервного копирования и планов Disaster Recovery для критически важных данных.
↘️
Подробна программа
🎁 До 15 мая действует скидка 5 000 ₽. А для тех, кто покупал Jenkins или GitlabCI, дополнительная скидка скидка 2 000 ₽
↘️
Узнать подробнее и записаться