logo
icon

MongoDB

Un programa de base de datos orientado a documentos, multiplataforma y con código fuente disponible.

template cover
Implementado2605 veces
EditorzeaburZeabur
Creado2024-03-29
Servicios
service icon
Etiquetas
Database

Desplegando MongoDB

MongoDB es una base de datos NoSQL popular, de código abierto y orientada a documentos. En lugar de filas y columnas tradicionales, almacena los datos en documentos flexibles similares a JSON, lo que la hace una excelente opción para aplicaciones web modernas que requieren alto rendimiento y escalabilidad.

Zeabur simplifica el proceso de configurar una base de datos. En lugar de administrar contenedores Docker o configurar servidores manualmente, puedes desplegar una instancia de MongoDB totalmente funcional desde el Marketplace con un solo clic.

Lo que aprenderás

En este tutorial, te guiaremos a través de:

  1. Desplegar un servicio de MongoDB en Zeabur.
  2. Conectarte a tu base de datos localmente usando VS Code, Compass o Mongosh.
  3. Configurar tu aplicación Node.js o Python para comunicarse con la base de datos.

Fase 1: Desplegar la base de datos

Paso 1: Crear el servicio de MongoDB

Zeabur ofrece un "despliegue con un clic", lo que significa que rara vez necesitas configurar ajustes complejos manualmente.

Opción 1: Crear una instancia de Postgresql desde la página del proyecto

  1. Inicia sesión en tu Zeabur Dashboard.
  2. Haz clic en el botón "New Project".
  3. Selecciona "Template" (Marketplace).
  4. Busca MongoDB.
  5. Selecciona la imagen oficial de MongoDB. Tu servicio comenzará a desplegarse inmediatamente.

Opción 2: Crear una instancia de MongoDB desde la página de la plantilla

  1. Inicia sesión en tu Zeabur Dashboard.
  2. Selecciona Features y Template.
  3. Elige o busca MongoDB.
  4. Selecciona MongoDB (normalmente la imagen oficial), haz clic en deploy y comenzará el despliegue.

Paso 2: Obtener tu cadena de conexión

  1. Ve a la pestaña Instruction del servicio.
  2. Copia la cadena de conexión de MongoDB (URI).
    • Se ve así: mongodb://mongo:xxxx@xxx.clusters.zeabur.com:25909

Fase 2: Conectarse a la base de datos

Opción A: Conectar usando VS Code

La mejor forma de administrar MongoDB en VS Code es usando la extensión oficial.

  1. Instalar la extensión:
    • Ve al Marketplace de extensiones.
    • Busca "MongoDB for VS Code".
    • Instala la creada por MongoDB.
  2. Agregar conexión:
    • Haz clic en el icono de hoja de MongoDB que aparece en la barra lateral.
    • Haz clic en "Add Connection".
    • Selecciona "Connect with Connection String".
  3. Pegar y conectar:
    • Pega la URL que copiaste de Zeabur en el Paso 3.
    • Presiona Enter.
    • Ahora puedes navegar tus colecciones y documentos directamente en la barra lateral.

Opción B: Conectar usando MongoDB Compass (GUI oficial)

Si quieres visualizar tus datos (tablas, gráficas, análisis de esquema), MongoDB Compass es la herramienta estándar.

  1. Descarga e instala MongoDB Compass.
  2. Abre la aplicación.
  3. En el cuadro "URI", pega la cadena de conexión de Zeabur.
  4. Haz clic en "Connect".
    • Solución de problemas: Si falla, asegúrate de no haber copiado accidentalmente el host "Internal". El host interno normalmente termina en .svc.cluster.local, lo cual no funcionará en tu computadora. El host público normalmente termina en .zeabur.app.

Opción C: Conectar usando Mongosh

mongosh es un entorno REPL completo de JavaScript y Node.js para interactuar con bases de datos MongoDB.

Una vez que lo hayas descargado e instalado según la documentación, vuelve a tu panel de Zeabur. Haz clic en la pestaña Connections del servicio de MongoDB y haz clic en el icono del ojo para copiar la cadena de conexión. connect-path

mongosh mongodb://<YOUR_CONNECT_PATH>

Reemplaza <YOUR_CONNECT_PATH> con la cadena de conexión que acabas de copiar, y puedes usar el siguiente comando para probar si la conexión es exitosa:

use mongodb_test
db.mongodb_test.insertOne({content: "Hello World"})
show dbs

Si tiene éxito, debería devolver: mongosh-connect-success

Luego podemos drop la base de datos de prueba.

use mongodb_test
db.drop()

💡 Nota importante: "Internal" vs "Public"

  • Para desarrollo local: Usa el dominio Public que acabas de configurar.
  • Para tu app desplegada: Cuando despliegues tu código backend (Node.js/Python) en Zeabur, cambia tu variable de entorno MONGO_URI para usar la cadena de conexión Internal (se encuentra en la sección "Private" de la pestaña Connection).
    • ¿Por qué? La conexión interna es mucho más rápida y no cuenta para tu uso de ancho de banda público.