Instalación y Configuración de Microservicios en Máquinas Virtuales
Resumen
¿Cómo desplegar una API en una máquina virtual?
Para implementar una API efectiva y robusta, es esencial comprender cómo levantar Microsoft Vicios en una máquina virtual, especialmente cuando no puedes acceder a servicios de servidores. Vamos a examinar cómo realizar este proceso paso a paso con un enfoque práctico.
¿Qué necesitas para comenzar?
Antes de desplegar tu API, asegúrate de tener:
Una máquina virtual configurada.
Acceso SSH a la máquina.
Instaladores necesarios para Nginx y Node.js.
Este tutorial asume que ya tienes una máquina virtual activa y acceso de consola a través de SSH.
¿Cómo instalar Node.js?
La instalación de Node.js es un paso fundamental para correr tu API en una máquina virtual. Aquí te mostramos cómo hacerlo:
Accede a tu máquina virtual:
Utiliza un cliente SSH como PuTTY para abrir una sesión SSH.
cd ~
Descarga los paquetes necesarios para Node.js:
Usa el comando curl para obtener los archivos de instalación.
Puedes verificar el estado de tus servicios usando PM2.
pm2 status
¿Cómo exponer tu API de manera segura?
No es recomendable exponer directamente los puertos internos a la web. Aquí te mostraremos cómo hacerlo de forma segura.
Uso de un proxy inverso:
Configura Nginx para manejar las solicitudes entrantes y redirigirlas a tus aplicaciones Node.js basadas en rutas específicas.
Edición de configuración de Nginx:
Configura Nginx para redirigir las conexiones entrantes a los diferentes servicios.
Esto es un resumen de cómo inicializar y gestionar una API en una máquina virtual. Recordemos que entender cada paso es fundamental para garantizar la seguridad y efectividad de nuestras aplicaciones. ¡Sigue explorando nuevas posibilidades y mejorando tus habilidades!
al desplegarlo en cloud platform significa que ya esta en internet?
puedo abrir este backend en la computadora de mi tia en su cas?
Es correcto, ya después puedes comprar un dominio que apunte a tal IP para poderlo abrir desde un dominio en particular, pero por ahora puedes usar las direcciones que te da google
gracias abrham!
Sería interesante extrapolar los servicios directamente creados para consultar directamente a MYSQL a través de un ORM y abstraer esa parte a un microservicio. Por ejemplo, con Sequelize.
Yo lo hice con AWS pero primero tuve que crear la clave SSH en el servidor y agregarla a github para que me dejara clonar el proyecto.
Para crear una cuenta un server gratuito en google clouds me pide tarjeta de cerdito, algun lugar donde se pueda hacer sin necesidad de tarjetas de credito?
muy bueno.. realmente se puede levantar en cualquier servidor.. sea google, aws, azure, etc... usualmente se recomienda crear una maquina virtual en linux. por que es ligero y facil de implementar el entorno.
Alguien sabe si aplicando todo el código de este curso puedo hacer una app completa funcional en producción. ¿O hay algún otro curso con una mejor estructura?
Hola, cuando se trata de proyectos de producción dependerá mucho de las necesidades, con lo que aprendes en este curso puedes crear un backend para producción, pero depende del tamaño de la app o el enfoque.
Puedes seguir iterando este diseño de tal forma que se adapte a lo que tu necesitas. Este podria ser como tu referencia
Hola a alguien mas le muestra este mensaje cuando despliega el proyecto en Google Clud?
Gracias de antemano
El error es al momento de verificar los logs en PM2
Como puedo desplegarlo en App Engine he estado investigando pero no he podido.
Puedes mirar en la documentación de Google App Engine sobre este tema.
También te dejo el link directo para que lo revises y puedas lograr el despliegue...
Documentación del entorno estándar de Google App Engine para Node.js
Suerte Ernesto :)
Y cómo conecto con el front? :(
"Support for password authentication was removed on August 13, 2021."
Ya no se puede hacer uso del comando git clone sobre la url del respositorio y despues proveer usuario y clave como se ve en el video.
¡MAGISTRAL!
actual v12.16.2 de node
Actual v12.18.1
Actual 14.16.0
Esta clase super :-)
Tuve algunos problemas/conflictos entre las versiones de los paquetes que se me instalaban local vs en la maquina virtual así que asegurense de no subir el folder de los nodemodules al repositorio, pueden copiarse el .gitignore de Carlos. Y en caso de que ya lo hayan subido, en la maquina virtual cuando clonen el repo eliminen el folder de los nodemodules antes de correr npm install. Pero la mejor opción sin duda es ver el .gitignore de Carlos, hay muchos otros archivos que se generan y no se necesitan subir
Hay algún lugar seguro que no me pida tarjeta de crédito para poder crear mi máquina virtual?
Depende del tipo de aplicación :thinking: para sitios estáticos puedes encontrar muy buenos, como Netlify, pero para un app que puede ejecutarse constantemente y consumir recursos del servidor, es normal que sean servicios de pago.
Échale un ojo a Vercel o Glitch.
Y para los que no sabemos como crear una máquina virtual en google? algún tutorial que me recomienden porfa?