Redis教程

4.使用docker安装redis

本文主要是介绍4.使用docker安装redis,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.拉去redis
[root@wmd01 bin]# docker pull redis

2.创建文件夹:
    mkdir -p /usr/local/docker/redis/config
    将自己的redis.conf文件放入(此处必须放入自己的redis.conf文件,并且必须是提前放入)
3.启动redis
 docker run -p 6379:6379 --name redis -v /usr/local/docker/redis/config/redis.conf:/etc/redis/redis.conf -v /usr/local/docker/redis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes
命令解释:
-p 6379:6379 端口映射:前表示主机部分,:后表示容器部分。
--name myredis 指定该容器名称,查看和进行操作都比较方便。
-v 挂载目录,规则与端口映射相同。
-d redis 表示后台启动redis
redis-server /etc/redis/redis.conf 以配置文件启动redis,加载容器内的conf文件,最终找到的是挂载的目录/usr/local/docker/redis/config/redis.conf
appendonly yes 开启redis 持久化



5.docker重启redis服务
[root@wmd01 jdk]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
cd8a28bf1a1c        redis               "docker-entrypoint.s…"   16 minutes ago      Up 16 minutes       0.0.0.0:6379->6379/tcp   redis
[root@wmd01 jdk]# docker restart cd8a28bf1a1c

6.如何验证dokcer启动的redis可用呢
    1.进入交互;
        [root@wmd01 jdk]# docker ps
        CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
        cd8a28bf1a1c        redis               "docker-entrypoint.s…"   20 minutes ago      Up 3 minutes        0.0.0.0:6379->6379/tcp   redis
        [root@wmd01 jdk]# docker exec cd8a28bf1a1c -it /bin/bash

    2.执行命令:
        root@cd8a28bf1a1c:/bin# redis-cli -p 6379
        127.0.0.1:6379> ping
        PONG
        127.0.0.1:6379> set name wmd
        OK
        127.0.0.1:6379> get name
        "wmd"
        127.0.0.1:6379> keys *
        1) "name"

7.如何查看启动的redis用的是哪个redis.conf文件呢
    [root@wmd01 config]# docker ps(查看运行的id号)
        CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
        e3d8c6065884        redis               "docker-entrypoint.s…"   2 minutes ago       Up 2 minutes        0.0.0.0:6379->6379/tcp   redis
    [root@wmd01 config]# docker exec -it e3d8c6065884 /bin/bash(进入交互)
    root@e3d8c6065884:/data# redis-cli info |grep config(执行该命令)
        configured_hz:10
        config_file:/etc/redis/redis.conf(返回的是使用的配置文件在容器中的路径)

8.如何用命令获取配置文件中的值(检查配置文件是否生效)(config get key)
    1.更改为配置需要重启下reids:docker restart 对应的id号
        127.0.0.1:6379> config get save
            1) "save"
            2) "60 5"
        127.0.0.1:6379> config get bind
            1) "bind"
            2) "127.0.0.1"
        127.0.0.1:6379> config get dir
            1) "dir"
            2) "/data/rdb"
    2.当然也可以使用命令设置redis的配项(在redis运行期间有效)
        127.0.0.1:6379> config set dir "/data/rdb"
            OK
        127.0.0.1:6379> config get dir
            1) "dir"
            2) "/data/rdb"

redis的性能测试

1.还是以docker启动的redis为例
命令如下:进入交互后:创建100个并发客户端,总共发送100000个请求
    root@cd8a28bf1a1c:/# redis-benchmark -h localhost -p 6379 -c 100 -n 100000
    
返回如下
序号 选项 描述 默认值
1 -h 指定服务器主机名 127.0.0.1
2 -p 指定服务器端口 6379
3 -s 指定服务器 socket  
4 -c 指定并发连接数 50
5 -n 指定请求数 10000
6 -d 以字节的形式指定 SET/GET 值的数据大小 2
7 -k 1=keep alive 0=reconnect 1
8 -r SET/GET/INCR 使用随机 key, SADD 使用随机值  
9 -P 通过管道传输 <numreq> 请求 1
10 -q 强制退出 redis。仅显示 query/sec 值  
11 --csv 以 CSV 格式输出  
12 -l 生成循环,永久执行测试  
13 -t 仅运行以逗号分隔的测试命令列表。  
14 -I Idle 模式。仅打开 N 个 idle 连接并等待。  

 

这篇关于4.使用docker安装redis的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!