Desplegando MongoDB en un Docker Container en menos de 10 minutos

Ya he hablado anteriormente de que es Docker y sus bondades tanto para las empresas como para los desarrolladores. En esta ocasión quiero compartir este tutorial que nos permitirá desplegar MondoDB como un contenedor. Interectuaremos con la consola de Cliente específicamente.

MongoDB es una de las bases de datos NoSQL, orientada a documentos, más populares de hoy en día. MongoDB se caracteriza por ser OpenSource y por estar orientada a priorizar la alta disponibilidad y la alta consistencia del Teorema CAP.

Para el siguiente tutorial, asumo que Docker se encuentra instalado en el computador o servidor.

Descargando la Docker Image de MongoDB

Lo primero que tenemos que hacer es ejecutar lo siguiente:

docker pull mongo

Después que haya terminado, contaremos con la imnagen de la version de MongoDB.

Creando una Instancia de MongoDB como Contenedor

Ya tenemos la imagen disponible en nuestro servidor o computador local. Ahora lo que tenemos que hacer es ejecutar el siguiente comando:

docker run -d -p 27017-27019:27017-27019 --name mongodb mongo

Lo que hace el comando anterior es lo siguiente:

  • docker run le dice al docker daemon que va ejecutar un container
  • -d hace que podamos ejecutar el container en detach o de forma desasistida.
  • -p 27017-27019:27017-27019 hace un mapeo entre los puertos externos e internos.
  • --name nos permite darle un nombre a nuestro contenedor. En este caso se llamará mongodb.
  • Y por último especificamos el nombre de la imagen a utilizar. En este caso mongo.

Interactuando con el Contenedor Docker de MongoDB a través de las operaciones básicas del Shell

Si has estado siguiendo este tutorial, a este punto tenemos ya un despliegue funcionalde MongoDB a través de Docker corriendo el modo detached. Por lo tanto, sin ningún problema podemos conectarnos al terminal del contenedor. Pongámos en ello.

docker exec -it mongodb bash

El comando exec -it nos permitirá conectarnos al container mongodb y ejecutar el terminal local del mismo. A partir de allí podemos empezar a usar MongoDB.

MondoDB CLI

Lo primero que haremos es ejecutar:

mongo

Ahora que estamos ya adentro, podemos acceder a todas las funcionalidades. Por ejemplo, creamos una nueva base de datos llamada mongo_on_docker`

use mongo_on_docker

Añadimos un par de registro a la colleción llamada libros:

db.libros.save({ titulos: 'MongoDB', 
                 author: { firstname: 'Jose', lastname: 'Gonzalez' }})
db.libros.save({ titulos: 'Docker for Everyboda', 
                 author: { firstname: 'Ruben', lastname: 'Gonzalez' }})

Consultamos los libros escritos por author, firstname "Jose":

db.libros.find({ author: { firstname: 'Jose' , lastname: 'Gonzalez' }})

En Resumen

Para realizar un despliegue de un servicio MongoDB en Docker hemos:

  1. Descargado la imagen del contenedor
  2. Creamos el contenedor en nuestro servidor, mapeamos los puertos y le dimos el nombre mongodb
  3. Ejecutamos el contenedor en detached mode para que quedara corriendo como un servicio en memoria.
  4. Ejecutamos el bash del contenedor para poder acceder a la Consola del MongoDB

Te ha ayudado esta página? Considera compartirlo 🙌

Avatar
José Fernando González Montero
Data Scientist / FullStack Python Web Developer

Siempre aprendiendo y queriendo saber más. Me encanta ser parte de proyectos en donde continuo desarrollando mis habilidades.

Relacionado