使用Docker 在本地搭建 Redis 环境

栏目: 数据库 · 发布时间: 7年前

内容简介:日常工作中都有自己的主力开发机、为了搭一套环境方便日常开发,通常都会选择在本地安装一些列服务端软件如 mysql、nginx等。久而久之本地便安装了很多服务端软件、升级和管理就变得特别麻烦。近期正好需要搭一个 redis 环境,于是开始着手通过 docker 镜像安装 逐步替换当前直接在host系统上直接安装服务端应用。本文记录了通过 docker 搭建 redis 环境的整个过程。

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

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

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

使用Docker 在本地搭建 Redis 环境
使用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 redis

NAME                             DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
redis                            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               49
kubeguide/redis-master           redis-master with "Hello World!"                29
rediscommander/redis-commander   Alpine image for redis-commander - Redis man…   25                                      [OK]                     

复制代码

2、拉取镜像:

➜:~ kongfutech$ docker pull redis

Using default tag: latest
latest: Pulling from library/redis
be8881be8156: Pull complete 
d6f5ea773ca3: Pull complete 
735cc65c0db4: Pull complete 
787dddf99946: Pull complete 
0733799a7c0a: Pull complete 
6d250f04811a: Pull complete 
Digest: sha256:858b1677143e9f8455821881115e276f6177221de1c663d0abef9b2fda02d065
Status: 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.sock
docker.sock        vms            vpnkit.port.sock
osxfs.sock        vpnkit.diag.sock
task.lock        vpnkit.eth.sock
复制代码

3、查看一下是否成功:

➜:~ kongfutech$ docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
redis               latest              4e8db158f18d        8 days ago          83.4MB
➜:~ kongfutech$ docker images redis
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
redis               latest              4e8db158f18d        8 days ago          83.4MB
复制代码

4、启动镜像:

➜:~ kongfutech$ docker run -p 6379:6379 -v $PWD/data:/data  -d redis:latest redis-server --appendonly yes
f2f6d7ba523b32dba90e08a077a47839c63b0d4da6e050637c1a6d02b51ae510

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

5、查看是否启动成功

➜:~ kongfutech$ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
f2f6d7ba523b        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 6379
127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379> ping
PONG
127.0.0.1:6379>
127.0.0.1:6379> set spring springframework
OK
127.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可直接下载可执行安装包。 github.com/microsoftar…

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

参考


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

编码整洁之道

编码整洁之道

罗伯特·C.马丁 / 电子工业出版社 / 2012-8 / 59.00元

忍受各种不确定性及不间断的压力并能够获取成功的程序员有一个共通特征:他们都深度关注软件创建实践。他们都把软件看做一种工艺品。他们都是专家。在“鲍勃大叔”看来“专业”的程序员不仅应该具备专业的技能,更应该具备专业的态度,这也是本书阐述的核心。专业的态度包括如何用带着荣誉感、自尊、自豪来面对进行软件开发,如何做好并做得整洁,如何诚实地进行沟通和估算,如何透明并坦诚地面对困难做抉择,如何理解与专业知识相......一起来看看 《编码整洁之道》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具