Микросервисы — это набор функций, установленных в одном приложении.

Это отличное решение для конкретных проблем или потребностей, которое позволяет быстро и относительно легко реагировать на внутренние или непосредственные проблемы клиентов.

В этой статье идея состоит в том, чтобы показать, как развернуть реализацию на основе модуля «Cloud Run», предлагаемого Google Cloud Platform, с использованием Python в качестве языка и Django (хотя на самом деле это не следует из примера) в качестве фреймворка, добавленного в Docker.

Хотя у меня в будущем есть статья про Docker, вкратце это программная платформа, позволяющая быстро создавать и развертывать приложения. Он упаковывает код в «оболочки», которые включают в себя все необходимое для запуска программного обеспечения, включая библиотеки, системные инструменты, код и среду выполнения.

Облачный бег

Отталкиваясь от базы, на которой мы все собираем, «Cloud Run» — это модуль GCP, в котором можно собрать или развернуть микросервисы из образов Docker, в которых содержится код, который мы хотим загрузить, в моем случае я обычно использую Django или Flask, оба являются фреймворками Python, на которые можно смонтировать сервер или, в данном случае, микросервис (он меняется только по определению на основе функциональности, которую мы собираемся ему предоставить)

Реестр контейнеров

Cloud Run работает вместе с другим модулем, «Реестр контейнеров», который позволяет нам загружать образ, который мы позже смонтируем, а также имеет очень полезную функциональность, состоящую в сохранении каждого push-образа каждого микросервиса, это означает, что в случае обновляя наш код, загружая новую версию и возникает ошибка, мы можем быстро перемонтировать предыдущий образ как временное решение.

Рамки

Что касается фреймворка, на котором кодируется наш микросервис, как я упоминал ранее, я использую Django или Flask (в основном первый, так как он обладает большей масштабируемостью и позволяет использовать разные типы баз данных, в том числе), так как Python — это язык который я использую чаще всего и который я считаю наиболее подходящим для этого типа решения.

Выполнение

С помощью кода нашего вооруженного микросервиса мы можем сгенерировать наш Dockerfile, который содержит спецификации развертывания, есть базовые шаблоны для отправки нашего образа в облако.

С нашим кодом и Dockerfile с помощью некоторых команд терминала мы можем загрузить наш образ и смонтировать его ниже, я оставляю вам краткое объяснение.

Важным пояснением является то, что если весь наш код является локальным, нам сначала нужно подключиться к нашему проекту GCP, установив Google SDK на наш локальный компьютер.

Если у нас этого нет, мы можем загрузить наш код в онлайн-редактор Google и из оболочки выполнить команды, которые мы увидим ниже.

Чтобы загрузить код в Container Registry

gcloud builds submit --tag gcr.io/{PROJECT ID}/{MICROSERVICE NAME}

Здесь есть предостережение, если это первый раз, когда мы нажимаем микросервис, и окончательное значение команды мы оставляем пустым, оно не будет принимать имя «Приложения», которое мы загружаем, но последующие разы, то есть, когда мы обновляем его там, если мы должны написать то же имя, с которым мы его создали, так как в Container Registry все образы, которые мы загружаем, хранятся и идентифицируются по имени

Чтобы развернуть загруженный образ в Container Registry

gcloud run deploy --image {PROJECT ID}/{MICROSERVICE NAME}

Эта команда берет образ, который мы загрузили, и монтирует его поверх Cloud Run, что дает нам возможность теперь использовать наш микросервис.
Если вы заинтересованы в создании микросервиса с нуля и тестировании некоторых функций, моя следующая статья будет быть об этом, используя все, что я видел, но с практическим примером.