基于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 配置文件中的第二行 由一行改为两行即可,如下图所示:


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

相关推荐
团儿.8 分钟前
Docker服务发现新纪元:探索Consul的无限魅力
运维·docker·云计算·服务发现·consul
vvw&32 分钟前
Docker Build 命令详解:在 Ubuntu 上构建 Docker 镜像教程
linux·运维·服务器·ubuntu·docker·容器·开源
dessler1 小时前
Docker-Dockerfile讲解(二)
linux·运维·docker
weisian1512 小时前
Redis篇--常见问题篇8--缓存一致性3(注解式缓存Spring Cache)
redis·spring·缓存
HEU_firejef2 小时前
Redis——缓存预热+缓存雪崩+缓存击穿+缓存穿透
数据库·redis·缓存
是芽芽哩!2 小时前
【Kubernetes 指南】基础入门——Kubernetes 基本概念(二)
云原生·容器·kubernetes
weisian1513 小时前
Redis篇--常见问题篇7--缓存一致性2(分布式事务框架Seata)
redis·分布式·缓存
白云coy3 小时前
Redis 安装部署[主从、哨兵、集群](linux版)
linux·redis
Logintern093 小时前
Linux如何设置redis可以外网访问—执行使用指定配置文件启动redis
linux·运维·redis
X__cheng4 小时前
【C++】list模拟实现
c++·容器