Introducción
Redis es una solución de base de datos en memoria remota excepcionalmente rápida. El modelo de datos clave-valor permite que Redis maneje grandes conjuntos de datos mientras mantiene una alta disponibilidad y velocidades de lectura y escritura.
Las bases de datos NoSQL, como Redis, están diseñadas para ejecutarse de manera eficiente en clústeres distribuidos que escalan horizontalmente. El uso de Docker para implementar Redis en un contenedor hace que el escalado horizontal sea un proceso rutinario y sencillo.
Este tutorial explica cómo implementar Redis en un contenedor Docker en poco tiempo.
Requisitos previos
- Acceso a una línea de comando
- Una instalación de Docker en funcionamiento
- Un usuario con root o sudo privilegios
Iniciar un contenedor Docker Redis
1. Verifique el estado actual del servicio Docker ingresando el siguiente comando en su terminal:
sudo systemctl status docker
El resultado confirma que Docker se está ejecutando y activo.
2. Recupere e inicie un contenedor de Redis (my-first-redis ) con docker run
comando:
sudo docker run --name my-first-redis -d redis
El comando no especificó una versión de Redis. El sistema procede a descargar la última versión disponible de Redis por defecto.
3. Una vez que se complete el proceso de instalación, verifique el estado de los contenedores docker actuales con docker ps
comando:
sudo docker ps
Entre otra información, el sistema proporciona:
- El ID único del contenedor:b36262951bf4
- Puerto de acceso:6379 (número de puerto Redis predeterminado)
- El nombre del contenedor definido:my-first-redis
Conéctese a Redis con redis-cli
Inicie el redis-cli
interactivo shell de comandos usando el siguiente comando:
sudo docker exec -it my-first-redis sh
Una vez que acceda al shell interactivo, escriba redis-cli
para conectarse a la instancia del contenedor de Redis.
Prueba los comandos básicos de Redis
1. Redis ping
El comando es útil para probar si una conexión a la base de datos de Redis está activa:
ping
La respuesta, PONG , indica que la conexión es exitosa.
2. Los almacenes de clave-valor utilizan el modelo de datos más simple posible. Una clave única se empareja con un valor. Use el comando set para definir la clave name
y el par de valores como pnap
:
set name pnap
3. Puede recuperar el valor utilizando la clave única name
y el get
comando:
get name
El resultado recupera el pnap
definido previamente valor. Hay disponible una lista de tipos de datos y comandos en nuestra guía completa Tipos de datos de Redis con comandos.
4. Una vez que haya explorado los comandos de redis-cli, escriba quit
para volver a la interfaz de la terminal de contenedores.
5. Escribe exit
para cerrar la conexión con el contenedor Docker.
Uso de un archivo redis.conf personalizado (opcional)
El redis.conf El archivo le permite configurar la autenticación, limitar los comandos y definir otras configuraciones orientadas a la seguridad.
Si ha creado un archivo de configuración de Redis personalizado, use el siguiente comando para cargar el archivo en el inicio del contenedor:
sudo docker run --name my-first-redis -v /myfirstredis/redis.conf:/usr/local/etc/redis/redis.conf -d redis
La ubicación de redis.conf el archivo en este ejemplo es myfirstredis/redis.conf
Acceda a Redis desde otro contenedor Docker
1. Usa el --link
opción para crear y conectar un nuevo contenedor a la instancia de Redis existente:
sudo docker run -it --rm --name my-second-redis --link my-first-redis:redis -d redis
El comando inició un nuevo contenedor Redis (my-second-redis ), basado en la imagen redis inicial. El mi-primer-redis el contenedor se denominará redis dentro del segundo contenedor.
Además, el --rm
La opción garantiza que el segundo contenedor se elimine solo después de salir del shell interactivo. Esta acción es opcional y se utiliza para conservar recursos.
2. Inicie el shell interactivo dentro de my-second-redis contenedor:
sudo docker exec -it my-second-redis sh
3. Inicie la línea de comandos de Redis en my-second-redis contenedor y conéctese a my-first-redis (ahora llamado redis ), con el siguiente comando:
# redis-cli -h redis
4. El mi-primer-redis original El contenedor sigue activo. El name
la clave creada anteriormente está disponible y se puede acceder a ella desde el segundo contenedor:
redis:6379> get name
El valor del par resultante es pnap
.
5. Ingrese exit
para salir de redis-cli y luego escriba exit
para volver a su terminal:
redis:6379> quit
# exit
Acceda a Redis desde el servidor remoto
Puede utilizar la función de redirección de puertos de Docker para acceder a los contenedores de Redis desde servidores remotos.
1. Defina el puerto que se utilizará para la conexión remota:
sudo docker run --name my-first-redis -p [port_number]:6379 -d redis
2. Acceda al contenedor de Redis desde un servidor remoto utilizando el nombre de host o IP y el número de puerto recién definido:
sudo redis-cli -h [host or IP] -p [port_number] -a [password]
El -a
el indicador de autenticación es opcional. Si se usa, solicita a los usuarios que ingresen su contraseña para acceder a la base de datos de Redis.