博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用Docker 在本地搭建 Redis 环境
阅读量:5908 次
发布时间:2019-06-19

本文共 3798 字,大约阅读时间需要 12 分钟。

日常工作中都有自己的主力开发机、为了搭一套环境方便日常开发,通常都会选择在本地安装一些列服务端软件如 mysql、nginx等。

久而久之本地便安装了很多服务端软件、升级和管理就变得特别麻烦。近期正好需要搭一个 redis 环境,于是开始着手通过 docker 镜像安装 逐步替换当前直接在host系统上直接安装服务端应用。

本文记录了通过 docker 搭建 redis 环境的整个过程。

安装 cli

➜:~ kongfutech$ wget http://download.redis.io/releases/redis-5.0.5.tar.gz➜:~ kongfutech$ tar xzf redis-5.0.5.tar.gz➜:~ kongfutech$ cd redis-5.0.5➜:~ kongfutech$ make复制代码

redis-5.0.5 目录下会出现服务端 redis-server 、客户端 redis-cli 后面可用它来与 docker 容器中的 redis 服务端交互。

安装镜像

1、查询镜像:

➜:~ kongfutech$ docker search redisNAME                             DESCRIPTION                                     STARS               OFFICIAL            AUTOMATEDredis                            Redis is an open source key-value store that…   7004                [OK]bitnami/redis                    Bitnami Redis Docker Image                      114                                     [OK]sameersbn/redis                                                                  75                                      [OK]grokzen/redis-cluster            Redis cluster 3.0, 3.2, 4.0 & 5.0               49kubeguide/redis-master           redis-master with "Hello World!"                29rediscommander/redis-commander   Alpine image for redis-commander - Redis man…   25                                      [OK]                     复制代码

2、拉取镜像:

➜:~ kongfutech$ docker pull redisUsing default tag: latestlatest: Pulling from library/redisbe8881be8156: Pull complete d6f5ea773ca3: Pull complete 735cc65c0db4: Pull complete 787dddf99946: Pull complete 0733799a7c0a: Pull complete 6d250f04811a: Pull complete Digest: sha256:858b1677143e9f8455821881115e276f6177221de1c663d0abef9b2fda02d065Status: Downloaded newer image for redis:latest➜:~ kongfutech$ /Users/kongfutech/Library/Containers/com.docker.docker/Data/-bash: /Users/kongfutech/Library/Containers/com.docker.docker/Data/: is a directory➜:~ kongfutech$ ls /Users/kongfutech/Library/Containers/com.docker.docker/Data/backend.sock        tasks            vpnkit.pcap.sockdocker.sock        vms            vpnkit.port.sockosxfs.sock        vpnkit.diag.socktask.lock        vpnkit.eth.sock复制代码

3、查看一下是否成功:

➜:~ kongfutech$ docker imagesREPOSITORY          TAG                 IMAGE ID            CREATED             SIZEredis               latest              4e8db158f18d        8 days ago          83.4MB➜:~ kongfutech$ docker images redisREPOSITORY          TAG                 IMAGE ID            CREATED             SIZEredis               latest              4e8db158f18d        8 days ago          83.4MB复制代码

4、启动镜像:

➜:~ kongfutech$ docker run -p 6379:6379 -v $PWD/data:/data  -d redis:latest redis-server --appendonly yesf2f6d7ba523b32dba90e08a077a47839c63b0d4da6e050637c1a6d02b51ae510复制代码
命令说明:-p 6379:6379 : 将容器的6379端口映射到主机的6379端口-v $PWD/data:/data : 将主机中当前目录下的data挂载到容器的 /data 目录redis-server --appendonly yes : 在容器执行 redis-server 启动命令,并打开 redis 持久化配置

5、查看是否启动成功

➜:~ kongfutech$ docker psCONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMESf2f6d7ba523b        redis:latest        "docker-entrypoint.s…"   10 minutes ago      Up 10 minutes       0.0.0.0:6379->6379/tcp   sharp_kepler复制代码

验证 redis 服务

通过 redis-cli 连接验证 部署在docker中的 redis

➜:~ kongfutech$ redis-cli -h 127.0.0.1 -p 6379127.0.0.1:6379> keys *(empty list or set)127.0.0.1:6379> pingPONG127.0.0.1:6379>127.0.0.1:6379> set spring springframeworkOK127.0.0.1:6379> get spring"springframework"127.0.0.1:6379> keys *1) "spring"2) "spring2"127.0.0.1:6379> keys spring*1) "spring"2) "spring2"复制代码

总结

1、linux 或 mac 可以直接通过源码编译安装 redis 服务端和 redis-cli 客户端;windows可直接下载可执行安装包。

2、通过官方 docker 镜像可在容器中直接部署 redis 服务端。应用和 redis-cli 客户端便可与 redis 服务端交互。同时使用 dockerfile 及其他配置文件就可将本地开发环境很好的管理起来。

参考

转载于:https://juejin.im/post/5d0517bbe51d45775a70030b

你可能感兴趣的文章
在开源氛围下,“够用就是最好”
查看>>
mongodb 配置项详解
查看>>
django 常用 模板过滤器
查看>>
eclipse如何把多个项目放在一个文件夹下
查看>>
vc2010混用debug或者release静态库提示error LNK2038的解决办法
查看>>
elasticsearch Java API 之Bulk API(批量操作)
查看>>
好的javascript程序员
查看>>
oracle自动生成uuid
查看>>
Spring Cloud Config采用数据库存储配置内容【Edgware+】
查看>>
[周榜单]极乐小程序榜单(第十三期)
查看>>
[JAVA多线程相关资料]
查看>>
人工智能或许把人类引入灾难的深渊?
查看>>
Linux虚拟机新增加了块100G硬盘后,把空间分配到/opt下
查看>>
linux 禁止普通用户使用su切换到root用户和禁止 root ssh登陆
查看>>
[LeetCode]86. Partition List
查看>>
[C++模板]Clang3.6版本的Checker
查看>>
交换机SPAN功能配置
查看>>
lua的Chunks和block
查看>>
Linux 下 的 cc 和 gcc
查看>>
nginx反向代理tomcat
查看>>