Utilisez la commande suivante :
docker pull redis
Habituellement, comme MySQL, Redis est utilisé comme base de données. Nous devons toujours monter sa configuration et ses données sur le volume de données. . Persistance sur la machine hôte.
Il est toujours facile à gérer grâce à la méthode named mount.
docker volume create redis-config docker volume create redis-data
De cette façon, deux volumes de données sont créés pour stocker des fichiers de configuration et des données. Vous pouvez également les nommer vous-même.
Entrez d'abord dans le répertoire du volume de données du fichier de configuration. Vous pouvez afficher l'emplacement du volume de données via la commande docker volume inspect
: docker volume inspect
命令查看数据卷的位置:
docker volume inspect redis-config
进入目录后创建名为redis.conf
的文件,并加入如下内容:
requirepass 12345678 dir /data
这里设置了密码为12345678
,设定了数据文件存放目录为/data
,这些配置都可以自定义,更多配置可以参考这篇博客。
执行下列命令:
docker run -id --name=redis -v redis-config:/usr/local/etc/redis -v redis-data:/data -p 6379:6379 -e LANG=C.UTF-8 redis su -l root -c "redis-server /usr/local/etc/redis/redis.conf"
上述参数如下:
-v
指定数据卷,可见将容器内/usr/local/etc/redis
挂载至了数据卷redis-config
,将容器内/data
挂载至数据卷redis-data
,可见这里挂载数据卷的容器内路径和我们上述预先写的配置文件中对应的路径是要一致的
-p
用于暴露端口
-e
用于指定容器内环境变量,设置容器的语言环境变量LANG
值为C.UTF-8
,这个最好是要设置,否则容器内默认是英文环境,使得Redis可能无法存放中文内容
末尾是启动命令,单独拿出来看一下:
su -l root -c "redis-server /usr/local/etc/redis/redis.conf"
意思是在容器内以root
身份运行redis-server
并指定了配置文件位置。
之所以要以root
身份运行,是因为防止其没有权限将数据写入到磁盘。也可见最后指定的配置文件路径,和前面-v
挂载的配置文件数据卷的容器内路径一致,这里好理解,但是要注意,如果你是自定义别的路径与文件名就需要在-v
rrreee
redis.conf code> et ajoutez le contenu suivant : 🎜rrreee🎜Le mot de passe est défini sur <code>12345678
et le répertoire de stockage du fichier de données est défini sur / data
. Ces configurations peuvent être configurées automatiquement. Définition, pour plus de configuration, veuillez vous référer à ce blog. 🎜🎜4. Créez et démarrez le conteneur🎜🎜Exécutez la commande suivante :🎜rrreee🎜Les paramètres ci-dessus sont les suivants :🎜-v code> Spécifiez le volume de données, on peut voir que <code>/usr/local/etc/redis
dans le conteneur est monté sur le volume de données redis-config
, et /data
dans le conteneur est monté Charger sur le volume de données redis-data
On peut voir que le chemin dans le conteneur où le volume de données est monté doit être cohérent avec celui correspondant. chemin dans le fichier de configuration pré-écrit que nous avons écrit ci-dessus 🎜🎜
-p
est utilisé pour exposer le port🎜-. e
est utilisé pour spécifier les variables d'environnement dans le conteneur et définir la variable d'environnement de langue du conteneur La valeur LANG
est C.UTF-8
. pour définir cela, sinon l'environnement par défaut dans le conteneur est l'anglais, ce qui peut empêcher Redis de stocker du contenu chinois🎜redis-server
en tant que root
dans le conteneur et spécifier l'emplacement du fichier de configuration. 🎜🎜La raison pour laquelle il doit être exécuté en tant que root
est pour l'empêcher d'écrire des données sur le disque sans autorisation. On peut également voir que le dernier chemin du fichier de configuration spécifié est cohérent avec le chemin dans le conteneur du volume de données du fichier de configuration monté précédemment avec -v
. C'est facile à comprendre ici, mais veuillez noter que. si vous personnalisez d'autres chemins et que le nom du fichier doit être modifié lors du montage avec -v
et lorsque la configuration spécifiée est finalement démarrée. Enfin, vous pouvez utiliser le client pour vous connecter à Redis sur le serveur ! 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!