1、拉取Redis镜像

# 拉取redis镜像,不指定版本则默认是最新版本
docker pull redis

2、查看镜像

# 列出本地镜像
docker images

3、准备配置文件路径

# 创建redis配置文件目录
# -p 确保每一级目录都存在,如果不存在则会自动创建
mkdir -p /usr/local/mydocker/redis/conf
# 创建redis数据文件目录
mkdir -p /usr/local/mydocker/redis/data

4、编写配置文件

最好是去redis的官方下载一个安装包,使用里面的配置文件。

下载地址:https://redis.io/downloads/。

下载后解压出一个redis.conf文件,就是我们需要的配置文件。

先在本地对配置文件做修改,修改内容如下:

bind 127.0.0.1 #注释掉这部分,使redis可以外部访问
daemonize no #用守护线程的方式启动
requirepass 你的密码 #给redis设置密码
appendonly yes #redis持久化  默认是no

把修改后的redis.conf文件放到上面配置的/usr/local/mydocker/redis/conf这个路径下。

5、启动容器

docker run -p 6379:6379 --name myredis \
-v /usr/local/mydocker/redis/data:/data \
-v /usr/local/mydocker/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf

命令解释:

  1. docker run:运行一个新的容器。
  2. -p 6379:6379:将主机上的端口6379映射到容器内的端口6379。
  3. --name myredis:为容器指定一个名称,这里是"myredis"。
  4. -v /usr/local/mydocker/redis/data:/data:将主机上的目录/usr/local/mydocker/redis/data挂载到容器内的/data目录,用于存储Redis的数据。
  5. -v /usr/local/mydocker/redis/conf/redis.conf:/etc/redis/redis.conf:将主机上的文件/usr/local/mydocker/redis/conf/redis.conf挂载到容器内的/etc/redis/redis.conf,用于配置Redis。
  6. -d redis:使用后台模式运行容器,并指定镜像名称为"redis"。
  7. redis-server /etc/redis/redis.conf:在容器内执行redis-server命令,启动Redis服务器并使用指定的配置文件/etc/redis/redis.conf,最终找到的是挂载的目录。

6、查看是否启动成功

[root@localhost conf]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e07a9d0a7700 redis "docker-entrypoint.s…" 14 seconds ago Up 13 seconds 0.0.0.0:6379->6379/tcp, :::6379->6379/tcp myredis

7、查看日志

docker logs -f myredis

8、进入容器

docker exec -it myredis /bin/bash

9、连接redis

redis-cli
# 输入密码
auth 123456
127.0.0.1:6379> auth 123456
OK

10、测试

127.0.0.1:6379> set key success
OK
127.0.0.1:6379> get key
"success"

Docker中部署单机Redis详细教程的更多相关文章

  1. ​在Docker中部署GreatSQL并构建MGR集群

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 为了方面社区用户体验GreatSQL,我们同时还提供Docker镜像,本文详细介绍如何在Docker中部署GreatSQL ...

  2. 阿里云运维部署工具AppDeploy详细教程

    AppDeploy是一个通过SSH实现的命令行工具,可完成应用部署和远程运维管理.当前工具实现为两个版本:普通版(伪代码描述语言)和Python版.Python版使用Python语法规则,可实现您的各 ...

  3. 在docker中部署centos7镜像

    本篇文章参考自: https://www.cnblogs.com/linjj/p/5606911.html https://blog.csdn.net/u012767761/article/detai ...

  4. docker 中部署一个springBoot项目

    docker 中部署一个springBoot项目 (1)介绍 springBoot项目 1.项目结构 2.pom.xml <?xml version="1.0" encodi ...

  5. 如果在docker中部署tomcat,并且部署java应用程序

    1.先说如何在docker中部署tomcat 第一步:root用户登录在系统根目录下创建文件夹tomcat7,命令如:mkdir tomcat7,并且切换到该目录下:cd tomcat7: 第二步:创 ...

  6. 在docker中部署redis主从配置

    环境说明: 阿里云服务器 Ubuntu 16.04 docker 1.拉取Redis镜像 docker pull redis 2.配置Redis启动配置文件,此处我创建一个专用目录,存放Redis相关 ...

  7. 使用Docker 一键部署 LNMP+Redis 环境

    使用Docker 部署 LNMP+Redis 环境 Docker 简介 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linu ...

  8. Docker中部署Kubernetes

    Kubernetes为Google开源的容器管理框架,提供了Docker容器的夸主机.集群管理.容器部署.高可用.弹性伸缩等一系列功能:Kubernetes的设计目标包括使容器集群任意时刻都处于用户期 ...

  9. docker中部署mongodb副本集

    1.基本信息如下 服务器地址 192.168.73.129 副本集名称 rs 容器节点及端口映射         m0 37017:27017         m1 47017:27017       ...

  10. 记一次Docker中部署Asp.Net Core 3.0的踩坑过程

    最近公司打算重构目前直销报单系统到微信小程序中,目前的系统只能在PC上面使用,这两年也搞过App端,但是由于人员流动和公司架构调整最后都不了了之,只留下一堆写了一半的接口.以前的接口依然是使用Asp. ...

随机推荐

  1. dotnet 8 破坏性改动 在 AssemblyInformationalVersionAttribute 添加上 git 的 commit 号

    我在一个 WPF 项目里面,在界面显示应用的版本号,更新到 dotnet 8 的 SDK 之后,发现我的界面布局损坏了.本质上这个破坏性改动和 WPF 没有什么关系,是 dotnet 的 SDK 或编 ...

  2. Mysql带条件取多条随机记录

    有个文章段落表part,有两种类型的段落,即part_type取1或2,要从表中随机取多条任意类型的段落,比如3条. 方法一 ORDER BY后接RAND() select * from part w ...

  3. CMDB开发(一)

    一.CMDB前戏 # 项目开发流程 1.需求分析 产品经理 开发人员 客户等三方会议 2.架构设计 框架的选择 语言选择 数据库选择 3.分组开发 小组成员各自开发各自的功能(可能也会有交集) 4. ...

  4. 2024-04-27:用go语言,在一个下标从 1 开始的 8 x 8 棋盘上,有三个棋子,分别是白色车、白色象和黑色皇后。 给定这三个棋子的位置,请计算出要捕获黑色皇后所需的最少移动次数。 需要注意

    2024-04-27:用go语言,在一个下标从 1 开始的 8 x 8 棋盘上,有三个棋子,分别是白色车.白色象和黑色皇后. 给定这三个棋子的位置,请计算出要捕获黑色皇后所需的最少移动次数. 需要注意 ...

  5. Solution Set - Splay

    A[洛谷P3369]维护集合,支持插入,删除,查询\(x\)的排名,查询排名\(x\)的数,查询前驱,查询后继. B[洛谷P3391]维护一个序列,支持区间翻转. C[洛谷P3380]维护数列,支持单 ...

  6. DNS(3) -- dns常用命令-rndc-dig-host-nslookup

    目录 1 bind自带客户端命令 1.1 rndc命令 1.2 检查配置文件语法 2 客户端测试命令 2.1 dig命令 2.2 host命令 2.3 nslookup命令 1 bind自带客户端命令 ...

  7. GPS坐标、火星坐标、百度坐标之间的转换--提供javascript版本转换代码

    1.国内几种常用坐标系说明 WG-S84: GPS仪器记录的经纬度信息,Google Earth采用,Google Map中国范围外使用,高德地图中国范围外使用.GCJ-02: 火星坐标系,中国国家测 ...

  8. C语言:删除顺序表中重复的信息—(删除顺序表中重复的单词)

    如何删除顺序表中的重复单词: (开始看内容之前容朕说一句:如果你最后怎么都运行不了你想要的结果,①我敢保证大概率是你的下标越界你的下标越界了你的下标越界了.②在我这程序里面你肯定打少了p--,少了p- ...

  9. JS监听DOM创建和销毁

    源码 web开发指南 <!DOCTYPE html> <html lang="zh"> <head> <meta charset=&quo ...

  10. SASS 运算 (Operations)符的基本使用

    ​ sass 运算符虽然没有像那些编程语言那么强大,但为了更灵活的输出css,也增强了一些运算符的功能,例如赋值运算符.等号操作符.比较运算符.逻辑运算符.字符串运算符...等等,接下来就来详细介绍下 ...