5分钟教你docker安装启动redis全教程(全新方式)

 更新时间:2021年05月29日 09:31:07   作者:小柯同学  
今天,我来带大家使用一种全新的方式docker来安装redis,首先我们来了解一下什么是redis以及我们为什么要使用redis,以及它的优缺点,感兴趣的朋友跟随小编一起学习下吧

什么是redis

    根据百度百科介绍,Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、是一个高性能(NOSQL)Key-Value数据库,并提供多种语言的API,redis也是完全开源免费的,遵守BSD协议。

什么又是NOSQL

    NOSQL,泛指非关系型的数据库,提到非关系型的数据库,我们就来简单讲讲关系型数据库,关系型数据库,大家都知道的oracle,mysql,postgre等都是关系型数据库,是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,以便于用户理解,关系型数据库这一系列的行和列被称为表,一组表组成了数据库,表与表之间使用主外键,建立关联关系,1对1,1对多,多对多等,用户通过SQL查询来检索数据库中的数据,而NOSQL,即Not Only SQL它是关系型数据库的一种良好补充。

为什么我们要使用redis

    大家都知道,关系型数据库的数据都是存储在硬盘中,例如微博这样的网站,每秒上万次的访问需求,甚至十几万次的访问需求,对硬盘io的读写要求是极高的,普通的数据库是难以应付的,在这样超大规模和高并发的场景下,出现了NOSQL的产品,redis,大家都知道redis,是把数据存储在内存中,省去了硬盘io读写时间,对海量数据的高效率存储和访问需求,效率也就大大的提高了,每个大厂几乎都在使用。

redis的优缺点

    优点就是,数据对存储在内存中,省去了硬盘io读写操作,大大提升了网站的访问效率,以key-value形式存储,可以达到快速查询,缺点就是比关系型数据库的存储类型少,当服务器关机后,内存释放后,数据都会消失,就需要我们手动,定期将数据同步到硬盘中。

    下面我们就动手安装吧。

安装redis 从docker仓库中拉取镜像

# docker pull redis

    出现下边的信息,说明拉取镜像成功

Using default tag: latest
latest: Pulling from library/redis
54fec2fa59d0: Already exists
9c94e11103d9: Pull complete
04ab1bfc453f: Pull complete
a22fde870392: Pull complete
def16cac9f02: Pull complete
1604f5999542: Pull complete
Digest: sha256:f7ee67d8d9050357a6ea362e2a7e8b65a6823d9b612bc430d057416788ef6df9
Status: Downloaded newer image for redis:latest
docker.io/library/redis:latest

确认镜像信息

# docker images

    确认redis镜像信息,本文在写的时候,redis在9天前发布了6.0版本,正好试用下。

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
redis                          latest              f9b990972689        9 days ago          104MB
mysql                        latest              a7a67c95e831        13 days ago         541MB

创建redis配置文件所需目录以及配置文件

# mkdir -p /mydata/redis/conf

# cd /mydata/redis/conf

# touch redis.conf

配置redis持久化(由于redis默认是将数据保存在内存中,redis重启后,数据会消失,这里的配置是将数据同步到磁盘中)

# vi redis.conf

添加appendonly yes

退出并保存

启动redis

# docker run --name myredis  -p 6379:6379 -v /mydata/redis/data:/data -v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf --requirepass "123456"

--name就是给redis实例起个名字

-d就是后台运行

-p将docker的6379端口映射到linux服务器6379端口上

--requirepass就是给redis设定一个密码

启动完成后,看是否启动成功

# docker ps -a

    出现下边信息,尤其是STATUS是UP的状态,说明启动成功

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
72bae285e236        redis               "docker-entrypoint.s…"   35 seconds ago      Up 33 seconds       0.0.0.0:6379->6379/tcp   myredis

使用redis-cli操作redis

#  docker exec -it myredis redis-cli -a 123456

-a 就是使用我们在安装时设置的密码

    出现下边命令行,说明我们就可以操作redis,当然windows也有操作redis客户端的工具,更加直观,看个人习惯用什么吧

127.0.0.1:6379>

简单的操作redis

127.0.0.1:6379> keys *
(empty array)
127.0.0.1:6379> set name iosoft2020
OK
127.0.0.1:6379>
127.0.0.1:6379> get name
"iosoft2020"
127.0.0.1:6379>
127.0.0.1:6379> keys *
1) "name"
127.0.0.1:6379>
127.0.0.1:6379>

    到这里,安装完成,使用过传统安装redis的小伙伴会深有体会,从官网下载安装包,解压,编译,启动等,非常的麻烦,费时间,使用docker安装redis非常简单吧,大家可以动手试一试。

以上就是5分钟教你docker安装redis到启动教程(全新方式)的详细内容,更多关于docker安装redis的资料请关注脚本之家其它相关文章!

相关文章

  • Redisson 加锁解锁的实现

    Redisson 加锁解锁的实现

    本文主要介绍了Redisson 加锁解锁的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • Redis常见数据类型List列表使用详解

    Redis常见数据类型List列表使用详解

    Redis的List是一种有序的字符串集合,支持两端高效插入和删除,适用于队列和栈,这篇文章主要介绍了Redis常见数据类型List列表使用的相关资料,需要的朋友可以参考下
    2024-12-12
  • 通过实例解析布隆过滤器工作原理及实例

    通过实例解析布隆过滤器工作原理及实例

    这篇文章主要介绍了通过实例解析布隆过滤器工作原理及实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • Redis中常见的几种集群部署方案

    Redis中常见的几种集群部署方案

    本文主要介绍了Redis中常见的几种集群部署方案,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • 一文带你了解Redis的三种集群模式

    一文带你了解Redis的三种集群模式

    Redis 的常用的集群方式主要有以下三种,分别是主从复制模式、哨兵模式、Redis-Cluster集群模式,那么下面我们就分别了解一下这三种集群模式的优点与缺点
    2023-06-06
  • 使用拦截器+Redis实现接口幂思路详解

    使用拦截器+Redis实现接口幂思路详解

    这篇文章主要介绍了使用拦截器+Redis实现接口幂等,接口幂等有很多种实现方式,拦截器/AOP+Redis,拦截器/AOP+本地缓存等等,本文讲解一下通过拦截器+Redis实现幂等的方式,需要的朋友可以参考下
    2023-08-08
  • redis通过lua脚本,获取满足key pattern的所有值方式

    redis通过lua脚本,获取满足key pattern的所有值方式

    这篇文章主要介绍了redis通过lua脚本,获取满足key pattern的所有值方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • 如何打造redis缓存组件

    如何打造redis缓存组件

    文章介绍了如何使用热插拔AOP、反射、Redis自定义注解和SpringEL表达式来打造一个优雅的Redis缓存组件,通过这种方式,可以重构和简化缓存代码,并提供了Redis配置和自定义注解的详细说明,文章还包含了AOP测试的总结,并鼓励读者参考和支持
    2024-12-12
  • Redis哨兵主备切换的数据丢失问题及解决

    Redis哨兵主备切换的数据丢失问题及解决

    主备切换过程中可能会导致数据丢失,异步复制和脑裂是两种主要原因,异步复制可能导致部分数据未复制到slave而master宕机,脑裂则可能导致多个master存在,旧master恢复后数据被清空,从而丢失数据
    2024-12-12
  • Django使用redis配置缓存的方法

    Django使用redis配置缓存的方法

    Redis是一个内存数据库由于其性能极高,因此经常作为中间件、缓存使用,缓存某些内容是为了保存昂贵计算的结果,这样就不必在下次执行计算,接下来通过本文给大家分享redis配置缓存的方法,感兴趣的朋友一起看看吧
    2021-06-06

最新评论