docker搭建redis6.0(docker run&docker compose演示)

文章讲了:docker下搭建redis6.0.20遇到一些问题,以及解决后的最佳实践方案

文章实现了:

  • docker run搭建redis
  • docker compose搭建redis

搭建一个redis'的过程中遇到很多问题,先简单说一下搭建的顺序

  1. 找一个redis.conf文件(没有配置文件也可以启动,但是任何对配置的修改都是无记录的,再次启动会丢失,文章下方会附带官方配置文件)
  2. 配置日志输出路径(不配置会输出到/dev/null,还是个二进制文件,日志输出路径可在redis.conf内设置 )
  3. 我们需要挂载3个重要目录:配置文件&数据文件&日志文件
    注意:
    • 配置文件挂载:应当挂载配置文件redis.conf所属的文件夹,而不能挂载该配置文件(引流错误:CONFIG REWRITE (error) ERR Rewriting config file: Device or resource busy)
    • 你应当创建一个redis.conf和redis的log文件用于启动的时候挂载到该容器内部
    • 所涉及到的文件和文件所在上层文件夹都给上最高操作权限(命令:chmod 777 /xxx)(引流错误:CONFIG REWRITE (error) Could not create tmp config file (Permission denied))
  4. docker run命令启动(下方附带)
  5. docker compose文件启动(下方附带)

redis.conf 官网链接:redis版本conf选择

点进去,全选网页内容,进入我们的目标文件夹,

  • 创建我们需要向容器内挂载的文件夹
  • 创建redis.conf配置文件
  • 创建redis.log日志文件
  • 给几个文件夹+文件赋予读写执行的权限(注意:我说的是文件夹和文件)
  • 将日志输出路径配置到配置文件内(vi 文件改改)
  • docker run启动(注意修改自己的挂载路径)
java 复制代码
  docker run -d --name redis-dev -p 6379:6379 -v /var/lib/dockerInfo/composeInfo/volumes/redisVolume/etc:/etc/redis -v /var/lib/dockerInfo/composeInfo/volumes/redisVolume/data:/data -v /var/lib/dockerInfo/composeInfo/volumes/redisVolume/logs/redis.log:/var/log/redis.log redis:6.0.20 redis-server /etc/redis/redis.conf
  • docker-compose文件
yaml 复制代码
name: redis-start
services:
  redis:
    restart: always
    image: redis:6.0.20
    container_name: redis-dev
    ports:
      - 6379:6379
    volumes:
      - /var/lib/dockerInfo/composeInfo/volumes/redisVolume/etc:/etc/redis
      - /var/lib/dockerInfo/composeInfo/volumes/redisVolume/data:/data
      - /var/lib/dockerInfo/composeInfo/volumes/redisVolume/logs/redis.log:/var/log/redis.log
    command: redis-server /etc/redis/redis.conf
    healthcheck:
      test: [ "CMD", "redis-cli", "ping" ]
      interval: 60s
      timeout: 10s
      retries: 3
相关推荐
醉卧雕龙舫 、18 小时前
七.Docker网络
docker
JH307319 小时前
《Redis 经典应用场景(一):缓存、分布式锁与限流》
redis·分布式·缓存
苦学编程的谢19 小时前
Redis_4_常见命令(完)+认识数据类型和编码方式
数据库·redis·缓存
小坏讲微服务19 小时前
五分钟使用 Docker-compose搭建 Redis 8.0 中间件
运维·redis·docker·中间件·容器·kubernetes·k8s
Aimyon_3620 小时前
MinerU Docker自定义版本部署
运维·docker·容器
梁正雄21 小时前
19、docker跨主机网络 Overlay\Underlay
网络·docker·容器
JanelSirry21 小时前
Redis服务器的的内存是多大
服务器·redis·github
大G的笔记本1 天前
高频 Redis 面试题答案解析
数据库·redis·缓存
陈果然DeepVersion1 天前
Java大厂面试真题:Spring Boot+微服务+AI智能客服三轮技术拷问实录(四)
spring boot·redis·微服务·kafka·spring security·智能客服·java面试
m0_748248021 天前
Redis的数据淘汰策略解读
数据库·redis·缓存