
文章目录
- 前言
- 一、介绍Redis
- 二、部署docker
- 三、部署redis
-
- [3.1 创建文件存储](#3.1 创建文件存储)
- [3.2 创建容器](#3.2 创建容器)
- [3.3 测试连接](#3.3 测试连接)
前言
Redis是一种开源的内存数据结构存储系统,它支持多种数据结构,如字符串、哈希、列表、集合、有序集合等。它可以用作数据库、缓存和消息中间件,并在性能、可扩展性和灵活性方面表现出色。
提示:以下是本篇文章正文内容
一、介绍Redis
Redis是一个完全开源免费的高性能(NOSQL)的key-value数据库。它遵守BSD协议,使用ANSI C语言编写,并支持网络和持久化。Redis拥有极高的性能,每秒可以进行11万次的读取操作和8.1万次的写入操作。它支持丰富的数据类型,包括String、Hash、List、Set和Ordered Set,并且所有的操作都是原子性的。此外,Redis还提供了多种特性,如发布/订阅、通知、key过期等。Redis采用自己实现的分离器来实现高速的读写操作,效率非常高。Redis是一个简单、高效、分布式、基于内存的缓存工具,通过网络连接提供Key-Value式的缓存服务。
Redis,英文全称是Remote Dictionary Server(远程字典服务),是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
与MySQL数据库不同的是,Redis的数据是存在内存中的。它的读写速度非常快,每秒可以处理超过10万次读写操作。因此redis被广泛应用于缓存,另外,Redis也经常用来做分布式锁。除此之外,Redis支持事务、持久化、LUA 脚本、LRU 驱动事件、多种集群方案。
Redis 有以下这五种基本类型:
String(字符串)
Hash(哈希)
List(列表)
Set(集合)
zset(有序集合)
Redis 有以下三种特殊的数据结构类型:
Geospatial
Hyperloglog
Bitmap
二、部署docker
三、部署redis
3.1 创建文件存储
代码如下(示例):
c
mkdir -p /home/app/redis/data
touch /home/app/redis/redis.conf

3.2 创建容器
代码如下(示例):
c
docker run --restart=always \
-p 6379:6379 \
--name redis \
-v /home/redis/redis.conf:/etc/redis/redis.conf \
-v /home/redis/data:/data \
--log-opt max-size=100m --log-opt max-file=3 \
-d redis:7.0.12 redis-server /etc/redis/redis.conf
-restart=always 设置容器总是开机启动;
-p 6379:6379 将6379端口挂载出去
--name 给这个容器取一个名字
-v 数据卷挂载 /home/dj/redis/redis.conf:/etc/redis/redis.conf此处是将宿主机 /home/dj/redis/redis.conf 文件映射到 redis 容器下的 /etc/redis/redis.conf,此处你也可以理解为docker容器和宿主机共享这个文件。
-d redis:7.0.12 后台运行容器,不加-d就是直接在控制台输出,关闭窗口即停止容器。
redis-server /etc/redis/redis.conf 以配置文件启动redis,加载容器内的 redis.conf文件,最终找到的是挂载的目录 /etc/redis/redis.conf 也就是宿主机下共享文件。
--log-opt max-size=100m --log-opt max-file=3max-size指定日志文件大小上限max-file:指定日志文件个数

3.3 测试连接
若使用外部连接,需要开放防火墙端口策略,或者云服务器的话配置安全组策略
代码如下(示例):
c
#进入容器
docker exec -it myredis bash
redis-cli
set k1 v1
get k1
#若上面命令报错,执行这个命令后再重复
auth ningzaichun
