Docker入门系列之手把手教学安装Redis

提到缓存我们就会条件反射的想起Redis,没办法,使用太宽泛了,而且读取效率高,轻便好用

Redis是现在最受欢迎的NoSQL数据库之一,Redis是一个使用ANSI C编写的开源、包含多种数据结构、支持网络、基于内存、可选持久性的键值对存储数据库。其具备如下特性:

  • 基于内存运行,性能高效
  • 支持分布式,理论上可以无限扩展
  • key-value存储系统
  • 开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API

相比于其他数据库类型,Redis具备的特点是:

  • C/S通讯模型
  • 单进程单线程模型
  • 丰富的数据类型
  • 操作具有原子性
  • 持久化
  • 高并发读写
  • 支持lua脚本

Redis的应用场景有哪些?

Redis 的应用场景包括:缓存系统("热点"数据:高频读、低频写)、计数器、消息队列系统、排行榜、社交网络和实时系统。

这里我带大家在Docker里安装Redis

2.这里我就直接使用命令docker pull redis拉去最新的Redis镜像了,当然也可以使用命令docker pull redis:版本号来拉取指定版本
3.安装成功后通过命令docker images来进行验证,这时候发现已经安装成功

如果我们手误下载错误的版本的话我们可以通过命令docker rmi IMAGE_ID删除我们刚才下载好的Redis镜像

4.创建数据目录和配置文件,创建一个目录来存放Redis的配置文件和数据,方便我们后续的维护

创建数据目录

js 复制代码
mkdir -p docker/redis
mkdir docker/redis/data

创建配置文件

这里我们需要使用Redis的配置文件,我们可以去官网地址中找我们想要版本号的config配置文件 这里我本地创建了一个文件,然后选择最上面的一个配置文件点进去 将里面的全部内容复制到我本地新建的redis.conf文件中,然后修改需要修改的属性

常见的修改配置 ,如果我们使用vim直接在linux里创建的配置文件,那么我们可以通过命令eg. :/appendonly来查找关键字,其中:/后面跟需要查找的信息

js 复制代码
# 将no改为yes
appendonly yes

# 将bind注释掉,否则只能本机访问redis,我们也可以根据实际情况配置IP
# bind 127.0.0.1 -::1

# 设置redis密码,一般我们自己使用的话不需要设置密码,我就不设置了
# requirepass [密码]

这里我分享一下我修改后的配置文件,有需要可以直接取链接redis.conf

修改完成后通过SSH工具或者其他方式上传到我们的指定目录位置

这里我推荐的工具是 Finallshell是开源免费的,操作简单。

还有一个工具也挺不错的,可以免费使用Xterminal,目前这两个我都在使用,Xterminal是我最近才发现的宝藏软件,目前使用着也很舒服,还可以记笔记。

5.创建Redis容器并启动
js 复制代码
docker run \
-p 6379:6379 \
--name redis \
-v /docker/redis/redis.conf:/etc/redis/redis.conf \
-v /docker/redis/data:/data \
--restart=always \
-d \
redis:latest \
redis-server /etc/redis/redis.conf

命令解释:

js 复制代码
docker run \ 
-p 6379:6379 \ docker与宿主机的端口映射
--name redis \ redis容器的名称(以后在docker可以通过这个名称执行相应操作)
-v /docker/redis/redis.conf:/etc/redis/redis.conf \ 挂载redis.conf文件
-v /docker/redis/data:/data \ 挂载redis的持久化数据
--restart=always \ 设置redis容器随docker启动而启动
-d \ 后台运行并返回容器ID
redis:latest \ 
redis-server /etc/redis/redis.conf 指定redis在docker中配置文件路径,后台启动redis

这里可以看到我们的Redis容器启动成功了 我们也可以直接通过Redis可视化工具来连接进行验证一下

相关推荐
brzhang7 小时前
A Definition of AGI:用人的智力模型去量 AI,这事靠谱吗?
前端·后端·架构
拾光师7 小时前
Hadoop安全模式详解
后端
Merlos_wind7 小时前
【Redis典型应用——缓存详解】
数据库·redis·缓存
阿杰AJie8 小时前
数据库id生成方案
后端·mysql
Xiaoweidumpb8 小时前
Linux Docker docker-compose 部署python脚本
linux·python·docker
摇滚侠8 小时前
Spring Boot3零基础教程,整合 Redis,笔记69
spring boot·redis·笔记
Broken Arrows8 小时前
解决同一个宿主机的两个容器无法端口互通报错“No route to host“的问题记录
运维·学习·docker
仪器工程师8 小时前
报错提示 “unclosed parenthesis”“mismatched quotes” 的解决办法
后端
yangwan8 小时前
Ubunut 22.04 安装 Docker 24.0.x
前端·后端
DemonAvenger8 小时前
Redis性能优化实战:从配置调优到代码实现的全面指南
数据库·redis·性能优化