Utilizar Redis en Docker containers: así se hace.

Redis es una de las imágenes más populares de Docker. Entre otras cosas, la base de datos clave-valor permite almacenar datos de contenedores Docker. Redis y Docker se pueden conectar en el terminal. Te mostramos cómo conectarlos.

Requisitos para usar Redis

Después de instalar Docker en un servidor de Linux, a menudo surge la pregunta de dónde se deberían almacenar los datos del contenedor Docker. Redis es una base de datos NoSQL que ofrece la solución ideal gracias a su gran velocidad y rendimiento. Antes de conectar a Redis con Docker, asegúrate de que se cumplan los siguientes requisitos:

  • Docker está instalado y funcionando.
  • Estás familiarizado con los comandos y las funciones básicas de Docker.
  • Tienes un servidor en la nube con un sistema operativo de Linux (Ubuntu 14.04 o CentOS 7).
Servidores virtuales VPS
Virtualización completa con acceso root
  • Ancho de banda de hasta 1 Gb/s y tráfico ilimitado
  • Almacenamiento SSD NVMe ultrarrápido
  • Incluye: edición Plesk Web Host

Ejecutar Redis en un contenedor de Docker

La imagen oficial Redis es una de las tres imágenes más populares de Docker. Contiene el comando EXPOSE 6379 (el puerto predeterminado de Redis), que automáticamente permite a todos los contenedores vinculados usar Redis.

Para ejecutar una instancia de Redis en un contenedor Docker llamado my-redis-container, utiliza el siguiente comando:

sudo docker run --name my-redis-container -d redis

La conexión de Redis se ejecuta en un contenedor Docker

Para conectarse a una instancia de Redis desde otro Docker container, añade --link[nombre o ID del contenedor Redis]:redis al comando Docker run de ese contenedor.

De este modo puedes, por ejemplo, crear un contenedor llamado my-redis-application desde la imagen oficial de CentOS 7 y vincularlo al contenedor my-redis-container que acabas de crear. Para ello, utiliza el siguiente comando:

sudo docker run --name my-redis-application --link my-redis-container:redis -d centos

Para conectarse a una instancia de Redis desde otro contenedor Docker con una interfaz de línea de comandos, enlaza el contenedor y especifica el host y el puerto con los siguientes dos parámetros: -h redis -p 6379.

Por ejemplo:

sudo docker run -it --name my-redis-cli --link my-redis-container:redis --rm redis redis-cli -h redis -p 6379

Esto te conectará al nuevo contenedor my-redis-cli con my-redis-container a través de una conexión redis-cli. Utiliza las combinaciones de teclas [Ctrl] + [P] y [Ctrl] + [Q] para salir de este contenedor y volver a la línea de comandos.

Certificado SSL
Protégete y compra un certificado SSL

Evita aparecer en la barra del navegador como "página no segura" y consigue la confianza de tus clientes con una página web con encriptación SSL.

Conectarse a un contenedor Redis desde un servidor remoto

También es posible conectar Docker a Redis desde un servidor. Para ello, es necesario utilizar el redireccionamiento de puertos de Docker. El redireccionamiento permite acceder al contenedor con la dirección IP o el nombre de dominio del servidor host.

Para utilizar el redireccionamiento de puertos de Docker para Redis, añade el parámetro -p [puerto del host]:6379 al comando docker run.

A continuación, puedes configurar el redireccionamiento de puertos para que puedas conectarte al contenedor a través de, por ejemplo, el puerto 7001 (el puerto TCP-/UDP estandarizado para ello). Para redireccionar el puerto puedes utilizar el siguiente comando de docker run:

sudo docker run --name my-redis-container -p 7001:6379 -d redis

A continuación, puedes cambiarte a otro servidor y acceder al contenedor my-redis-container con el siguiente comando:

sudo redis-cli -h [IP del host o nombre de dominio] -p 7001

Si el servidor host en el que se ejecuta el contenedor Docker de Redis tiene, por ejemplo, la dirección IP 192.168.0.1, con el siguiente comando podrás acceder al contenedor de Redis desde cualquier servidor:

sudo redis-cli -h 192.168.0.1 -p 7001
Nota

Si utilizas un cortafuegos, debes permitir el acceso externo a los puertos correspondientes, de lo contrario se bloqueará el acceso. Para ello, solo necesitas ir a la configuración de tu cortafuegos y permitir el acceso a los puertos afectados.

Cargar un archivo redis.conf customizado

Si tienes un archivo redis.conf customizado en el que ya has configurado Redis, puedes cargarlo al iniciar el contenedor añadiendo el parámetro -v al comando docker run:

-v [path to custom redis.conf file]:/usr/local/etc/redis/redis.conf

Solamente necesitas añadir la ruta de tu archivo .conf al comando. Para, por ejemplo, cargar el archivo customizado con la ruta /data/myredis/redis.conf, el comando es el siguiente:

sudo docker run --name my-redis-container -v /data/myredis/redis.conf:/usr/local/etc/redis/redis.conf -d redis
¿Le ha resultado útil este artículo?
Utilizamos cookies propias y de terceros para mejorar nuestros servicios y mostrarle publicidad relacionada con sus preferencias mediante el análisis de sus hábitos de navegación. Si continua navegando, consideramos que acepta su uso. Puede obtener más información, o bien conocer cómo cambiar la configuración de su navegador en nuestra. Política de Cookies.
Page top