Google Cloud Run es una de las soluciones rápidas y escalables para la implementación de su API a través de una conexión https segura y puede considerarse como la primera opción de todos los desarrolladores. Bueno, firebase es para sitios web estáticos, ¿verdad? ¿Qué pasa si también podemos implementar sitios web dinámicos en firebase? Todo lo que necesitas es Cloud Run . Aquí, en este tutorial, le mostraremos cómo puede implementar un sitio web simple en Cloud Run. Usaremos Flask para el sitio web. Primero configure su sistema con Google Cloud SDK. Si no sabe cómo hacerlo, le recomiendo que lea su documentación oficial aquí .
Habilitar la API de Cloud Run
A continuación, debe habilitar la API de Cloud Run .
- Vaya a Marketplace en Cloud Console.
- Luego busque la API Cloud Run y habilítela
Después de realizar todos estos pasos, su página debería verse así
Creando el proyecto
Ahora empieza la parte divertida. Vayamos al código.
- Primero cree una carpeta de proyecto. En mi caso, usaré el nombre Cloud Run Tutorial .
- Vaya a la carpeta del proyecto y cree un archivo llamado requirements.txt y agregue Flask==1.1.1 al archivo.
- Ahora cree un archivo python llamado app.py y agréguele las siguientes líneas.
# importing Flask
from
flask
import
Flask
app
=
Flask(__name__)
# specifying the route
@app
.route(
'/'
)
def
hello_world():
return
'Hello, World !'
# this if block make sure that Flask app runs
# only if the file is executed directly
if
__name__
=
=
'__main__'
:
# exposing port 8080 of localhost
app.run(host
=
'0.0.0.0'
, port
=
8080
)
Si tiene alguna confusión con el código anterior o desea obtener más información, prefiero que lea la documentación del matraz aquí .
- A continuación, cree un Dockerfile con el nombre Dockerfile (sin ninguna extensión) y agréguele las siguientes líneas de código.
#pulls python 3.7’s image from the docker hub
FROM python:alpine3.
7
#copies the flask app into the container
COPY .
/
app
#sets the working directory
WORKDIR
/
app
#install each library written in requirements.txt
RUN pip install
-
r requirements.txt
#exposes port 8080
EXPOSE
8080
#Entrypoint and CMD together just execute the command
#python app.py which runs this file
ENTRYPOINT [
"python"
]
CMD [
"app.py"
]
Implementar el proyecto
Ahora su proyecto está listo para ser implementado. Para implementarlo en Google Cloud Run, debemos incluir el proyecto en un contenedor y el contenedor en Google Container Registry (gcr).
Veamos cómo se puede hacer.
- Vaya al directorio de su proyecto y abra la terminal.
- Escribe gcloud init y selecciona el proyecto de GCP en el que deseas implementar el sitio web y anota la identificación del proyecto.
- Escriba export project_id=THE_PROJECT_ID_NOTED .
- Luego, escribe gcloud builds submit –tag gcr.io/${project_id}/helloworld:v1 . Esto tardará unos minutos en completarse.
- Luego escriba gcloud run deployment –image gcr.io/${project_id}/helloworld:v1 –platform Managed
- Se le pedirá el nombre del servicio: presione ENTER para aceptar el nombre predeterminado, helloworld .
- Se le pedirá la región: seleccione la región de su elección.
- Se le pedirá que permita invocaciones no autenticadas : respond y
Luego, espere unos momentos hasta que se complete la implementación. En caso de éxito, la línea de comando muestra la URL del servicio.
- Visite su contenedor implementado abriendo la URL del servicio en un navegador web.
Producción-
Si ha realizado todos los pasos correctamente, su página de Cloud Run debería verse así
¡Felicidades! Acaba de implementar una aplicación empaquetada en una imagen de contenedor en Cloud Run. Cloud Run escala de forma automática y horizontal la imagen de su contenedor para manejar las requests recibidas, luego se reduce cuando la demanda disminuye.
¿Escribir código en un comentario? Utilice ide.geeksforgeeks.org , genere un enlace y compártalo aquí.
Publicación traducida automáticamente
Artículo escrito por debdutgoswami y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA