基于Docker的Redis安装

一、搜索镜像

通过docker 搜索 redis 镜像文件

sh 复制代码
docker search redis

二、下载镜像

通过docker images 查看下载下来的redis镜像,默认下载最新的版本

docker pull redis

三、配置挂载文件

创建本地与docker映射的目录,即本地存放的位置

创建本地存放redis的位置;

可以自定义,因为我的docker的一些配置文件都是存放在/data目录下面的,所以我依然在/data目录下创建一个redis目录,这样是为了方便后期管理.

创建 data 、conf、以及redis.conf配置文件,否则无法通过redis deskTop manager访问

sh 复制代码
mkdir -p /root/redis/data /root/redis/conf #-p 表示递归
touch /root/redis/conf/redis.conf #创建配置文件

配置文件内容如下

sh 复制代码
# 允许远程连接
# bind 127.0.0.1
# 受保护模式,该模式开启只能通过127.0.0.1访问,无法通过外网访问,所以这里要禁用
protected-mode no
# appendonly开启持久化
appendonly yes
# 密码,如不需要验证可以不需要
# requirepass passwd

四、创建容器

sh 复制代码
docker run -p 6379:6379 --name myredis
-v /root/redis/data:/data
-v /root/redis/conf/redis.conf:/etc/redis/redis.conf
-d  redis redis-server /etc/redis/redis.conf
--name 给容器起名字
-v 将物理机地文件挂载到docker容器内
-d 后台运行
-p 将物理机端口映射到容器端口上
redis 镜像名称
redis-server /etc/redis/redis/conf //启动redis程序并挂载配置文件

五、启动容器

docker start myredis

六、查看容器状态

查看容器是否启动成功

docker ps

七、使用linux 客户端连接redis 并进行测试

docker exec -it myredis redis-cli //默认连接本地,端口为6379

使用get,set进行存取测试,如果这里存储的是汉字,在获取的时候可能获取到的16位的字符串,这里只需要连接的时候添加 --raw即可,完整语句如下:

docker exec -it myredis redis-cli --raw

八、使用redis desktop manager连接redis

name: 随便写 host:主机ip port:6379(默认端口号,如有修改填写修改后的端口号) auth:密码(如无忽略即可) 如通过redis-cli可以连接,而通过redis desktop manager无法连接 ,请确认第三步或第四步

九、补充

如果执行docker启动命令后,使用docker ps命令,找不到正在运行的redis。请使用docker logs 容器名,如上述所创建的容器,docker logs myredis 即可查找错误日志,如下图所示,使用docker start myredis 启动容器后,容器并没有启动,所以我们这里通过查看日志的方式解决

从下图可以看出,是读取配置文件出错了,也就是我们挂载的redis.conf配置文件

将上述中的redis.conf 配置文件中的第二行 由一行改为两行即可,如下图所示:


感谢大家的耐心阅读,如有建议请私信或评论留言

相关推荐
minsin1 小时前
【linux】【docker】Docker默认网段配置导致无法访问
docker
Amagi.2 小时前
Redis的内存淘汰策略
数据库·redis·mybatis
无休居士3 小时前
【实践】应用访问Redis突然超时怎么处理?
数据库·redis·缓存
.Net Core 爱好者3 小时前
Redis实践之缓存:设置缓存过期策略
java·redis·缓存·c#·.net
悲伤的创可贴3 小时前
Docker安装以及简单使用
linux·docker·centos
方圆师兄3 小时前
docker快速搭建kafka
docker·容器·kafka
小的~~4 小时前
k8s使用本地docker私服启动自制的flink集群
docker·flink·kubernetes
诚诚k4 小时前
docker存储
运维·docker·容器
sorel_ferris5 小时前
Ubuntu-24.04中Docker-Desktop无法启动
linux·ubuntu·docker
数据智能老司机5 小时前
Kubernetes从入门到精通系列——外部 DNS 和全局负载均衡
云原生·容器·kubernetes