Comment utiliser Redis dans des conteneurs Docker ?

Redis compte parmi les images Docker les plus populaires. La mémoire de valeurs clés permet, entre autres, de stocker des données issues de conteneurs Docker. Il est possible de relier Redis à Docker dans le terminal. Nous allons vous montrer comment vous y prendre.

Prescriptions relatives à l’utilisation de Redis

Après avoir installé Docker sur un serveur Linux, les utilisateurs se demandent souvent où ils doivent réellement stocker les données de leurs conteneurs Docker. Redis est une base de données NoSQL extrêmement rapide, ce qui en fait la solution idéale. Avant de relier Redis à Docker, assurez-vous de remplir les conditions suivantes :

  • Docker est bien installé et fonctionne correctement.
  • Vous connaissez les commandes et fonctionnalités de base de Docker.
  • Vous utilisez un serveur Cloud sous Linux (Ubuntu 14.04 ou CentOS 7).

Serveurs virtuels (VPS) avec IONOS

Hébergement VPS puissant et économique pour l'exécution de vos applications personnalisée, avec conseiller personnel et assistance 24/7.

Certificat SSL
Stockage 100% SSD
Prêt en 55 s

Exécuter Redis dans un conteneur Docker

L’image officielle Redis compte parmi les trois images Docker les plus populaires. Elle contient la commande « EXPOSE 6379 » (correspondant au port Redis par défaut) et permet d’utiliser automatiquement Redis sur tous les conteneurs associés.

Pour exécuter une instance Redis dans un conteneur Docker (« my-redis-container »), utilisez la commande suivante :

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

Relier Redis à un autre conteneur Docker

Pour relier une instance Redis à un autre conteneur Docker, ajoutez « --link[Redis Containername » ou « ID]:redis » à la commande « docker run » de ce celui-ci.

Il est donc possible, par exemple, de démarrer un conteneur nommé « my-redis-application » à partir de l’image officielle de CentOS 7 et de relier celui-ci au conteneur « my-redis-container » tout juste créé. Pour parvenir à ce résultat, utilisez la commande suivante :

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

Pour relier un autre conteneur Docker à une instance Redis en passant par une interface de ligne de commande, associez le conteneur en question et précisez l’hôte et le port en utilisant la commande « -h redis -p 6379 ».

Par exemple :

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

Vous serez ainsi relié au nouveau conteneur « my-redis-cli » grâce à la connexion « redis-cli » avec « my-redis-container ». Utilisez les raccourcis clavier [Ctrl] + [P] et [Ctrl] + [Q] pour sortir de ce conteneur et revenir à votre ligne de commande.

Certificats SSL IONOS

Gagnez la confiance de vos visiteurs en protégeant votre site Web avec un certificat SSL !

Activation facile
Sécurité maximale
Assistance 24/7

Se connecter à un conteneur Redis depuis un serveur distant

Il est également possible de relier Docker à Redis depuis un serveur. Vous devez vous appuyer sur la redirection de port de Docker pour y parvenir. Celle-ci vous permet d’accéder au conteneur en utilisant l’adresse IP ou le nom de domaine de votre serveur hôte.

Pour appliquer la redirection de port de Docker à Redis, ajoutez l’indicateur « -p [host port]:6379 » à votre commande « docker run ».

Par la suite, vous avez par exemple la possibilité de configurer la redirection de port de manière à relier directement le conteneur par l’intermédiaire du port 7001 (soit le port TCP-/UDP). Voici la commande « docker run » à utiliser à cet effet :

 

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

Vous pouvez ensuite passer à un autre serveur. Pour accéder au conteneur « my-redis », utilisez la commande suivante :

sudo redis-cli -h [host IP or domain name] -p 7001

Par exemple, si le serveur hôte sur lequel s’exécute le conteneur Docker avec Redis utilise l’adresse IP 192.168.0.1, alors la commande qui suit peut vous permettre d’accéder au conteneur Redis à partir de n’importe quel serveur :

sudo redis-cli -h 192.168.0.1 -p 7001
Note

Si vous travaillez avec un pare-feu, vous devez autoriser l’accès externe pour les ports concernés, sans quoi toute tentative d’accès sera bloquée. Pour ce faire, ouvrez les paramètres relatifs à votre pare-feu et autorisez l’accès aux ports en question.

Charger un fichier redis.conf personnalisé

Si vous possédez un fichier redis.conf personnalisé dans lequel Redis a déjà été configuré, vous pouvez charger celui-ci au démarrage du conteneur en ajoutant l’indicateur « -v » à votre commande « docker run », comme suit :

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

Il vous suffit ensuite de préciser, pour cette commande, le chemin d’accès vers votre fichier conf. Si vous souhaitez par exemple charger le fichier personnalisé avec le chemin d’accès « /data/myredis/redis.conf », vous devez utiliser la commande suivante :

sudo docker run --name my-redis-container -v /data/myredis/redis.conf:/usr/local/etc/redis/redis.conf -d redis