Использование Terraform для развертывания приложения в Google Cloud Run обеспечивает масштабируемый процесс развертывания и может уменьшить трудности с настройкой. Следуйте этому руководству, чтобы начать.
Сочетание Terraform с Cloud Run обеспечивает масштабируемое и предсказуемое развертывание. В то же время вы можете развернуть свое приложение в Google Cloud с минимальными трудностями настройки благодаря процессу развертывания, который поддерживает Cloud Run.
Давайте рассмотрим шаги, необходимые для развертывания приложения в Google Cloud Run с помощью Terraform.
Что такое Google Cloud Run?
Cloud Run — это полностью управляемый сервис, который позволяет развертывать приложения всего несколькими щелчками мыши или командами CLI. Развертывание в Cloud Run может выглядеть как предоставление образа контейнера для вашего приложения, указание нескольких параметров конфигурации и указание Cloud Run запустить приложение. Это означает, что вам не нужно беспокоиться о подготовке инфраструктуры хоста или масштабировании серверов.
Cloud Run примечателен тем, что это платформа, ориентированная на контейнеры. Не все подобные сервисы предназначены специально для развертывания контейнерных приложений. Cloud Run поддерживает приложения, написанные на любом языке. Это преимущество, которое вы не получите от некоторых подобных сервисов, таких как многие платформы, работающие как услуга ( FaaS ), совместимые только с определенными языками программирования.
Что такое Terraform?
Terraform — это популярная платформа инфраструктуры как кода ( IaC ). Как и другие предложения IaC, Terraform позволяет инженерам определять, как приложение должно работать, используя код. Затем они могут автоматически передавать эту конфигурацию в любое количество хостинговых сред.
Terraform упрощает развертывание приложений в масштабе. Это снижает риск ошибок конфигурации, которые могут возникнуть из-за недосмотра человека. Если файлы, определяющие развертывание вашего приложения, правильно закодированы, ваше приложение будет работать так, как вам нужно.
Развертывание в Google Cloud Run с помощью Terraform
Взгляните на пример использования Terraform для развертывания в Cloud Run.
Предпосылки
Единственным важным условием является наличие образа контейнера для приложения, которое вы хотите развернуть. Образ контейнера должен размещаться в реестре контейнеров, доступном с компьютера, который вы используете для развертывания приложения.
Terraform должен быть установлен на компьютере, с которого вы работаете. Вы можете скачать его с сайта HashiCorp .
Настроить Терраформ
Шаг 1. Откройте пустой файл в своем любимом текстовом редакторе и добавьте следующие строки для запуска Terraform:
# main.tf терраформировать { требуемая_версия = ">= 1.3" required_providers { гугл = ">= 3.3" } }
Это говорит Terraform использовать версию 1.3. На момент публикации это самая последняя стабильная версия. Он также сообщает ему использовать версию 3.3 или более позднюю версии провайдера Terraform Google; это важно, поскольку в этом выпуске Terraform представила поддержку Cloud Run.
Шаг 2. Сохраните файл с именем main.tf.
Шаг 3. Добавьте в файл следующие строки:
провайдер "гугл" { проект = "проект_id" }
Шаг 4. Замените значение project_id на идентификатор вашего проекта Google Cloud. Если вы еще не создали проект для развертывания своего приложения, вы можете сделать это в консоли Google Cloud или с помощью следующей команды:
проекты gcloud создают "project_id" –name="project_name"
Шаг 5. Снова сохраните файл.
Шаг 6. Добавьте эти строки в ваш файл:
ресурс "google_cloud_run_service" "run_service" { имя = "ваше_приложение" location = "us-europe-west1" шаблон { спец { контейнеры { image = "registry.com/path/to/your/app:1" } } } ресурс "google_project_service" "run_api" { сервис = "run.googleapis.com" disable_on_destroy = истина } depend_on = [google_project_service.run_api] }
Обязательно замените следующие значения в зависимости от вашей конфигурации:
- Имя . Установите имя, которое вы хотите использовать для своего приложения.
- Местоположение . Установите регион GCP, который вы хотите использовать.
- Изображение . Должен указывать на расположение образа контейнера для приложения, которое вы хотите развернуть.
Шаг 7 . Сохраните файл еще раз.
Развертывание в Cloud Run
Теперь вы готовы развернуть приложение на основе конфигурации, определенной вами с помощью Terraform.
Шаг 1. Сначала проверьте конфигурацию, введя следующее:
план терраформирования
Вывод суммирует действия, которые Terraform предпримет при вызове конфигурации.
Шаг 2. Разверните приложение, введя следующее:
применить терраформ
Теперь ваше приложение должно быть запущено. По умолчанию он не должен быть доступен через общедоступные HTTP-запросы из-за ограничений доступа. Вы должны иметь доступ к нему как аутентифицированный пользователь Google Cloud с включенным разрешением Cloud Run Invoker.
Вам не нужно использовать Terraform для использования Cloud Run или наоборот. Вы также можете развертывать приложения в Cloud Run, используя только интерфейс командной строки Google Cloud. И вы можете использовать Terraform для развертывания приложений практически в любой хост-среде, а не только в Cloud Run.