当前位置: 首页 > news >正文

谷粒商城学习-11-docker安装redis

文章目录

  • 一,拉取Redis镜像
    • 1,搜索Redis的Docker镜像
    • 2,拉取Redis镜像
    • 3,查看已经拉取的镜像
  • 二,创建、启动Redis容器
    • 1,创建redis配置文件
    • 2,创建及运行Redis容器
    • 3,使用docker ps查看运行状态的容器
    • 4,验证容器是否可用
  • 三,修改Redis配置文件

一,拉取Redis镜像

1,搜索Redis的Docker镜像

下载镜像前可以先查询镜像仓库有哪些镜像,执行如下命令查询Redis镜像。

docker search redis

在这里插入图片描述

当然去Docker Hub搜索能看到更详细的信息。

2,拉取Redis镜像

docker pull redis

如上命令表示把标签为Redis镜像拉取到本地。

  • docker pull 表示从镜像仓库拉取镜像
  • redis 我们在拉取mysql镜像时指定了标签为5.7,此处拉取redis没有指定标签,将会拉取最新版本的redis镜像

如果拉取的速度非常慢,把docker的yum源设置为阿里云,速度会大幅提升。参考文献

3,查看已经拉取的镜像

docker images

在这里插入图片描述

二,创建、启动Redis容器

1,创建redis配置文件

mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf

这一步非常重要,下一步会把redis的配置文件挂到这个目录,如果不事先创建配置文件,创建容器时会把redis.conf作为文件夹而不是配置文件

2,创建及运行Redis容器

使用docker run创建启动容器。

docker run -p 6379:6379 --name redis -v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf

以下是给定的 docker run 命令的详细解释,以列表形式展示每个参数的作用:

①. docker run

  • 启动一个新的 Docker 容器。

②. -p 6379:6379

  • 执行端口映射,将宿主机的 6379 端口映射到容器内的 6379 端口,使外部可以访问容器内的 Redis 服务。

③. --name redis

  • 为容器指定一个名字,命名为 redis,方便后续管理和识别。

④. -v /mydata/redis/data:/data

  • 进行目录挂载,将宿主机上的 /mydata/redis/data 目录挂载到容器内的 /data 目录。这样做是为了实现数据的持久化,容器内的数据文件(如 RDB 或 AOF)将保存在宿主机的这个目录下。

⑤. -v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf

  • 另一个目录挂载,将宿主机上的 /mydata/redis/conf/redis.conf 文件挂载到容器内的 /etc/redis/redis.conf。这意味着容器内的 Redis 将使用宿主机提供的配置文件运行,允许用户自定义配置,如持久化策略、密码保护等。

⑥. -d

  • 设置容器在后台(守护进程模式)运行,不会阻塞当前的 shell 会话。

⑦. redis

  • 指定容器使用的 Docker 镜像名称,这里是官方的 Redis 镜像。

⑧. redis-server /etc/redis/redis.conf

  • 指定容器启动时执行的命令。redis-server 是 Redis 的服务启动脚本,后面跟的 /etc/redis/redis.conf 是容器内 Redis 的配置文件路径。因为使用了 -v 参数挂载了自定义配置文件,所以这里实际上使用的是宿主机提供的配置文件来启动 Redis 服务。

3,使用docker ps查看运行状态的容器

docker ps

可以看到一个名为redis的容器正在运行。

在这里插入图片描述

4,验证容器是否可用

使用docker命令进入mysql命令行客户端

docker exec -it redis redis-cli

如下,可以连接到redis的命令行工具,执行读写数据的命令。

在这里插入图片描述

说明redis安装成功。

三,修改Redis配置文件

在上一步,我们向Redis写入一条数据,key是a,value是b,也能正常读出数据。

但是,如果执行如下命令重启redis容器。

docker restart redis

重启完成后,发现写入的数据无法查询,原因是根据redis默认的配置,数据仅仅存储在内存,重启后数据会丢失。

绝大多数场景下,需要把Redis中的数据持久化到磁盘,这需要修改一个配置。

修改过程很简单,执行如下命令:

vim /mydata/redis/conf/redis.conf

然后向这个打开的配置文件写入如下配置:

appendonly yes

在这里插入图片描述
保存,然后重启Redis。

之后写入的数据都会持久化到磁盘,重启Redis也不会丢数据。

http://www.lryc.cn/news/392404.html

相关文章:

  • C++:类继承是什么,怎么继承
  • 期权学习必看圣书:《3小时快学期权》要在哪里看?
  • Keepalived 双机热备
  • 基于React和TypeScript的开源白板项目(Github项目分享)
  • 1019记录
  • 详细设计与概要设计区别-慧哥充电桩开源系统
  • vue3 引入百度地图的三种方式
  • 鸿蒙开发设备管理:【@ohos.usb (USB管理)】
  • Golang | Leetcode Golang题解之第204题计数质数
  • ELK日志系统和Filebeat采集器的学习总结
  • QML-Grid和OpacityMask
  • MySQL的并发控制、事务、日志
  • CNN文献综述
  • python语句前面有一个$是什么意思
  • wsl安装Linux系统到指定位置
  • [笔记] 高等数学在各工程门类的典型应用场景
  • 刀片服务器和机架式服务器有何区别
  • SQLyog脚本无限试用重置脚本
  • 代码随想录训练营第二十九天 134加油站 135分发糖果 860柠檬水找零 406根据身高重建队列
  • 智能生产管理系统设计
  • 满足GMSL静电防护要求的方案
  • 【Odoo开源ERP】别把ERP与进销存软件混为一谈
  • 八、浏览器同源策略
  • 重载赋值运算符
  • 数字信号处理及MATLAB仿真(2)——离散系统
  • 大模型思维链(Chain-of-Thought)技术原理
  • gda动态调试-cnblog
  • Double 4 VR仿真情景实训教学系统在法律专业课堂上的应用
  • k8s-第一节-minikube
  • html+js+css在线倒计时