首页 > 其他 > 详细

docker之redis使用

时间:2019-10-23 22:50:44      阅读:100      评论:0      收藏:0      [点我收藏+]
#拉取redis
> docker pull redis:latest
latest: Pulling from library/redis
8d691f585fa8: Pull complete                                                                                             8ccd02d17190: Pull complete                                                                                             4719eb1815f2: Pull complete                                                                                             200531706a7d: Pull complete                                                                                             eed7c26916cf: Pull complete                                                                                             e1285fcc6a46: Pull complete                                                                                             Digest: sha256:fe80393a67c7058590ca6b6903f64e35b50fa411b0496f604a85c526fb5bd2d2
Status: Downloaded newer image for redis:latest
docker.io/library/redis:latest


#查看images
> docker images
REPOSITORY                                                                     TAG                 IMAGE ID            CREATED             SIZE
redis                                                                          latest              de25a81a5a0b        6 days ago          98.2MB


#启动redis:后台启动redis 并将redis6379端口映射至本地6380端口 容器名设为some-redis1
> docker run --name some-redis1 -p 6380:6379  -d redis:latest --requirepass "123456"
a996cb04b0024be3fd4f6d08e3b567ad9389d9c59b1185f601400ab48e17cefd

#查看容器
> docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
a996cb04b002        redis:latest        "docker-entrypoint.s…"   2 minutes ago       Up 2 minutes        0.0.0.0:6380->6379/tcp   some-redis1

#进入容器&&连接redis客户端
> docker exec -ti a996cb04b002 redis-cli
127.0.0.1:6379> 

#运行redis命令
127.0.0.1:6379> auth 123456
OK
127.0.0.1:6379> set name panpan
OK
127.0.0.1:6379> get name
"panpan"
127.0.0.1:6379> quit

  

#进入容器
> docker exec -ti a996cb04b002 /bin/bash

#查看环境变量
root@a996cb04b002:/data# env
HOSTNAME=a996cb04b002
REDIS_DOWNLOAD_SHA=6624841267e142c5d5d5be292d705f8fb6070677687c5aad1645421a936d22b3
PWD=/data
HOME=/root
REDIS_VERSION=5.0.6
GOSU_VERSION=1.11
TERM=xterm
REDIS_DOWNLOAD_URL=http://download.redis.io/releases/redis-5.0.6.tar.gz
SHLVL=1
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
_=/usr/bin/env

#查看目录
root@a996cb04b002:/data# ls

#查看容器内运行的进程
root@a996cb04b002:/data# ps -ef
bash: ps: command not found

#进入redis客户端
root@a996cb04b002:/data# redis-cli

#退出redis客户端
127.0.0.1:6379> quit

#远程连接redis
root@a996cb04b002:/data# redis-cli -h 192.168.*.* -p 6379

#操作redis-cli时需认证
auth yourpassword

  

应用示例

#模糊查询
root@a996cb04b002:/data# redis-cli -h 192.168.*.* -p 6379 --scan --pattern ‘*GetPartAccount_*‘
DVMProxyApi-devGetPartAccount_facebook
DVMProxyApi-alphaGetPartAccount_facebook
DVMProxyApi-testGetPartAccount_facebook

#查询value数据
root@a996cb04b002:/data# redis-cli -h 192.168.*.* -p 6379
:6379> type DVMProxyApi-devGetPartAccount_facebook
hash
:6379> Hkeys DVMProxyApi-devGetPartAccount_facebook
1) "absexp"
2) "data"
3) "sldexp"
:6379> HGET DVMProxyApi-devGetPartAccount_facebook sldexp
"-1"
:6379> HGET DVMProxyApi-devGetPartAccount_facebook data
"{\"data\":[******

  

#.net core:获取滑动过期时间
:6379> HGET DVMProxyApi-devGetPartAccount_facebook sldexp
"864000000000"
#查询redis过期时间:以秒为单位返回
:6379> ttl DVMProxyApi-testGetPartAccount_facebook
(integer) 79765

#powershell 时间段转为ttl
> New-TimeSpan -Hours 24   #New-TimeSpan -seconds 76765


Days              : 1
Hours             : 0
Minutes           : 0
Seconds           : 0
Milliseconds      : 0
Ticks             : 864000000000
TotalDays         : 1
TotalHours        : 24
TotalMinutes      : 1440
TotalSeconds      : 86400
TotalMilliseconds : 86400000

 

#删除fields 
:6379> hdel DVMProxyApi-devGetPartAccount_facebook data absexp sldexp
(integer) 3
#查看过期时间
:6379> ttl DVMProxyApi-testGetPartAccount_facebook
(integer) 78700
#获取在哈希表中指定 key 的所有字段和值
:6379> hgetall DVMProxyApi-devGetPartAccount_facebook
(empty list or set)
#删除key
:6379> del DVMProxyApi-devGetPartAccount_facebook
(integer) 0
#检查给定 key 是否存在。
:6379> exists DVMProxyApi-devGetPartAccount_facebook
(integer) 0

:6379> quit
root@a996cb04b002:/data# redis-cli -h 192.168.*.* -p 6379  --scan --pattern ‘*GetPartAccount_*‘
DVMProxyApi-alphaGetPartAccount_facebook
DVMProxyApi-testGetPartAccount_facebook
root@a996cb04b002:/data#

  

  

redis-cli, the Redis command line interface

 

docker之redis使用

原文:https://www.cnblogs.com/panpanwelcome/p/11728830.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!