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
相关推荐
FIN技术铺2 小时前
Redis集群模式之Redis Sentinel vs. Redis Cluster
数据库·redis·sentinel
涔溪2 小时前
Docker简介
spring cloud·docker·eureka
内核程序员kevin3 小时前
在Linux环境下使用Docker打包和发布.NET程序并配合MySQL部署
linux·mysql·docker·.net
kayotin4 小时前
Wordpress博客配置2024
linux·mysql·docker
运维&陈同学5 小时前
【模块一】kubernetes容器编排进阶实战之k8s基础概念
运维·docker·云原生·容器·kubernetes·云计算
mit6.8246 小时前
[Docker#4] 镜像仓库 | 部分常用命令
linux·运维·docker·容器·架构
程序员曦曦6 小时前
一文熟悉redis安装和字符串基本操作
自动化测试·软件测试·数据库·redis·功能测试·程序人生·缓存
风再云巅7 小时前
Redis下载历史版本
redis
Java 第一深情8 小时前
Redis经典面试题-深度剖析
数据库·redis·缓存
诡异森林。9 小时前
Docker--Docker是什么和对Docker的了解
运维·docker·容器