Google Cloud Run: trabajar con Python

Python es uno de los lenguajes de programación más populares y en crecimiento. Es muy adecuado para una serie de casos de uso, incluidas aplicaciones web, aprendizaje automático y big data. Cloud Run le permite usar cualquier tiempo de ejecución que desee, lo que facilita la implementación de Python sin servidor. Cloud Run también está completamente administrado, lo que significa que no tiene que preocuparse por el escalado de la infraestructura si su servicio comienza a recibir una gran cantidad de tráfico.

 Si tiene una aplicación Python sin estado existente, todo lo que necesita hacer es agregar un archivo para implementar una superficie en Cloud Run. No se necesitan cambios de código. A los usuarios les gusta usar Flask para servicios pequeños como este porque es un marco liviano que es fácil de configurar. Su servicio tiene lo básico, un archivo HTML donde se puede crear un formulario para obtener información del usuario, un archivo CSS simple y un archivo app.py donde establecemos rutas y definimos funciones.

El último archivo que deberá definir es el archivo Docker. Esto permite a los usuarios personalizar el tiempo de ejecución de su contenedor para que se adapte exactamente a sus necesidades. Los contenedores son una forma de aislar nuestra aplicación para que funcione igual sin importar dónde se implemente.

Al crear un archivo de Docker, primero debemos especificar una imagen base de Docker con el comando FROM como se muestra a continuación:

FROM python: 3.8-slim

Aquí es donde configura su tiempo de ejecución de Python.

El comando COPY agrega archivos del directorio actual de su cliente Docker como se muestra a continuación:

COPY. . /

El comando EJECUTAR instala las dependencias de Flask , gunicorn y del convertidor de divisas para el servicio.

RUN pip install Flask gunicorn CurrencyConverter

Y finalmente, CMD es un comando para iniciar la aplicación dentro del contenedor y vincularla a un puerto.

CMD gunicorn --bind :$PORT app:app

La aplicación: aplicación al final significa importar nuestra aplicación desde el archivo app.py.

Una de las ventajas de Cloud Run es que puede ejecutar cualquier versión de Python que desee siempre que haya una imagen base de Docker disponible para ella. Incluso puede usar la versión más reciente de Python, la versión 3.8, si lo desea.

Ahora que tenemos nuestro archivo Docker, podemos construir nuestro contenedor con Cloud Build. Esto agrupa nuestro código junto con todo lo que hemos agregado en nuestro archivo Docker y lo envía al Registro de contenedores, un lugar para almacenar imágenes de contenedores. Y finalmente, implementamos el servicio en Cloud Run.

Solo se necesitan dos comandos para llevar el servicio al mundo. En la terminal, primero construimos el contenedor usando el comando builds.

$ gcloud builds submit --tag gcr.io/PROJECT_ID/PROJECT-NAME

Y luego implementamos el servicio usando la imagen del contenedor que acabamos de crear.

$ gcloud run deploy --image gcr.io/PROJECT_ID/PROJECT-NAME

Si revisamos la sección Cloud Run de la consola de Google Cloud, podemos ver nuestro servicio Cloud Run. Si hacemos clic en el servicio, podemos ver información importante, como métricas y la URL de nuestro servicio.

Aquí los usuarios también pueden redirigir o dividir el tráfico de usuarios a revisiones anteriores si descubren que la última revisión tiene un cambio importante.

Publicación traducida automáticamente

Artículo escrito por ddeevviissaavviittaa y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *