Cada vez hay mas opciones de bases de datos para elegir la que más nos convenga y en estos tiempos las bases de datos de grafos se están volviendo cada vez más populares.
Vamos a ver cómo podemos iniciar de forma sencilla un contenedor Docker de neo4j para empezar a usar esta novedosa forma de almacenar datos.
Antes de comenzar aquí van algunas consideraciones:
- Docker ya debe estar instalado en tu computadora
- neo4j hasta la versión 3 solamente puede manejar una base de datos por instancia (no esperes algo como en Postgres donde puedes tener todas las bases que quieras iniciando un solo servidor)
- Para este ejemplo no vamos a usar ningún tipo de autenticación por lo que no es recomendable para un ambiente de producción
Instalar la imagen de neo4j
Para tener disponible la imagen de neo4j hay que descargarla del repositorio de Docker con el comando docker pull neo4j
Esto instala la versión más reciente disponible aunque tal vez prefieras instalar una versión específica para tener mas control sobre las actualizaciones. Puedes consultar el estado de las versiones disponibles en la página oficial de la imagen de neo4j en Docker hub.
Ejecutar el contenedor de la imagen de neo4j
Por seguridad vamos a crear una carpeta en nuestro directorio personal para almacenar la base de datos y que no se destruya al detener el contenedor mkdir $HOME/neo4j_data
Y ahora iniciamos en contenedor docker run --rm --name neo4j_test -p 7474:7474 -p 7687:7687 -v $HOME/neo4j_data:/data --env=NEO4J_AUTH=none neo4j
Listo. Con esto debe iniciar el contenedor exponiendo los puertos 7474 y 7687 además de vincular el directorio de almacenamiento de datos de neo4j con nuestro directorio local y sin usar la autenticación a la base de datos.
Ejecutar el cliente de consultas integrado
Para poder interactuar con la base de grafos solamente hay que abrir un navegador web y escribir la URL http://localhost:7474
No es necesario ingresar ningún usuario y contraseña y hay que recordar que solamente se puede usar una sola base de datos (grafo) por instancia de neo4j en ejecución (en la versión 3 y anteriores).
Conclusión
Con esto ya puedes empezar a utilizar una base de grafos de neo4j sin autenticación corriendo desde un contenedor Docker.
En otro post hablaré de como usar la API web de neo4j para ejecutar queries desde un programa hecho en Node.
Hasta la próxima 👋.