当前位置: 首页 > news >正文

【零基础部署】Docker 部署 Redis 保姆级教程

Redis 是最流行的内存数据库之一,广泛用于缓存、消息队列、会话存储等场景。本教程将手把手教你用 Docker 部署 Redis,从基础配置到生产环境优化,零基础也能跟着做。

1. 什么是 Redis?

1.1 Redis 简介

Redis(Remote Dictionary Server)是一个开源的内存数据结构存储系统,主要特点:

  • 高性能:数据存储在内存中,读写速度极快(10 万+ QPS)
  • 丰富的数据结构:String、Hash、List、Set、Sorted Set 等
  • 持久化:支持 RDB 和 AOF 两种持久化方式
  • 高可用:支持主从复制、哨兵模式、集群模式

1.2 典型应用场景

场景说明示例
缓存热点数据缓存,减轻数据库压力用户信息、商品详情
会话存储分布式会话管理Session 共享
消息队列发布/订阅模式异步任务处理
排行榜Sorted Set 实现实时排行游戏排行榜
计数器原子操作实现计数点赞数、浏览量
分布式锁SETNX 实现分布式锁秒杀系统

2. 环境准备

2.1 硬件要求

配置项最低要求推荐配置
内存1GB4GB+(取决于数据量)
磁盘1GB 可用空间10GB+(用于持久化)
CPU1 核2 核+

注意:Redis 是内存数据库,数据主要存储在内存中,内存大小决定了能存储多少数据。

2.2 软件要求

  • Docker 20.10+
  • Docker Compose v2(可选,用于生产环境)

3. 使用 Docker 部署 Redis

3.1 快速启动(推荐新手)

最简单的方式是直接使用官方镜像:

# 创建数据目录mkdir-p~/redis-data# 运行 Redis 容器dockerrun-d\--nameredis\-p6379:6379\-v~/redis-data:/data\redis:latest\redis-server--appendonlyyes

参数说明

  • -d:后台运行
  • --name redis:容器名称
  • -p 6379:6379:映射端口
  • -v ~/redis-data:/data:数据持久化
  • redis-server --appendonly yes:开启 AOF 持久化

3.2 使用 Docker Compose(推荐生产环境)

创建docker-compose.yml文件:

version:'3.8'services:redis:image:redis:7-alpinecontainer_name:redisports:-"6379:6379"volumes:-redis-data:/data-./redis.conf:/usr/local/etc/redis/redis.confcommand:redis-server /usr/local/etc/redis/redis.confrestart:unless-stoppedhealthcheck:test:["CMD","redis-cli","ping"]interval:10stimeout:5sretries:3volumes:redis-data:

启动服务:

# 创建配置文件(可选)cat>redis.conf<<'EOF' # 基础配置 bind 0.0.0.0 port 6379 daemonize no protected-mode no # 持久化配置 appendonly yes appendfsync everysec save 900 1 save 300 10 save 60 10000 # 内存配置 maxmemory 256mb maxmemory-policy allkeys-lru # 日志配置 loglevel notice logfile "" EOF# 启动服务dockercompose up-d# 查看日志dockercompose logs-f# 检查服务状态dockercomposeps

3.3 带密码的部署

version:'3.8'services:redis:image:redis:7-alpinecontainer_name:redisports:-"6379:6379"volumes
http://www.rkmt.cn/news/1417146.html

相关文章:

  • 小白也能看懂!AI大模型概念清单,收藏这份学习指南轻松入门
  • 从Python列表切片到LLM接口实战:零基础AI编程落地教程
  • taotoken平台api调用稳定性与低延迟实际网络测试感受
  • 从实验室到上车:一份完整的车载毫米波雷达环境与耐久性测试清单
  • 告别杜邦线乱飞!用PCF8574模块和I2C总线,让你的51单片机LCD1602接线清爽起来
  • 2026实测乌鲁木齐四大财税机构:公司注册首选TOP1出炉! - 小柏云
  • GitNexus是Monorepo单体仓库
  • 电磁直线执行器直接驱动的流体控制阀系统【附程序】
  • 模型检验中的对称性破缺技术:应对核电站IC系统验证的组合爆炸
  • 基于Arduino的密码锁系统:从矩阵键盘到伺服电机的完整实现
  • 中国石化仪征化纤有限责任公司特种纤维研究所所长王芳,分享《超高分子量聚乙烯纤维和对位芳纶纤维在工程领域的应用》
  • 2026国产在线余氯监测仪十大品牌深度横评:技术破局与全场景选型指南 - 液体流量液位品牌推荐
  • 投资者信任危机应对全解析,深度解读Gemini IR风控模型与实时舆情响应机制
  • NI-DAQmx模拟设备(SimDev)完全使用指南:没硬件也能玩转数据采集仿真
  • RPGMakerDecrypter完全指南:3步解密RPG Maker加密存档的专业方法
  • 评测全网10款主流降AI率软件:只选真正管用的那一款! - 降AI小能手
  • Python日志系统详解
  • ATtiny85软件PWM驱动RGB氛围灯:中断、防抖与电源设计全解析
  • 从PID控制到反应轮:自制自平衡立方体的完整工程实践
  • 别再纠结了!gtsummary vs compareGroups:R语言画基线表到底该选谁?
  • 大型项目弯头厂家选型参考:五个决策步骤与案例解析 - 速递信息
  • 6G智能超表面优化:从信道可编程到能效与安全性能提升
  • 别再死记ResNet结构了!用PyTorch手搓一个ResNet-18,带你彻底搞懂残差连接
  • 基于Arduino与NRF24L01的无线遥控车DIY全攻略:从电路设计到代码实现
  • 2026年5月电磁流量计生产厂家推荐——污水测量哪款能真正获得市场认可?
  • 从‘像素对错’到‘结构好坏’:一个迭代细化技巧,让你的模型预测自己纠错(Topology Loss实战)
  • SAP PS项目模板搭建保姆级教程:从CJ91到CN13,手把手教你构建企业核心资产
  • 创客教育实战:从电路设计到生活应用的跨学科项目指南
  • 移动端电声乐器音频处理:从DSP算法到硬件接口的完整实现
  • Arduino红外传感器触发OLED显示系统:实现智能感应与节能显示