版权声明:不要随便复制~~ 技术更新有些东西也会相应更新 https://blog.csdn.net/chuxin_mm/article/details/88126455
镜像官网:
https://hub.docker.com/_/redis
1. 拉取镜像:
docker pull redis
2. 获取redis的images id:
[root@wangqinmin /]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
redis latest 0f55cf3661e9 3 weeks ago 95MB
2. 运行镜像( 这一步可以被称作:映射端口并运行镜像 ):
docker run -d -p 63791:6379 --name Myredis 0f55cf3661e9
查看端口是否被启用: netstat -tunlp
解释:
docker run -d -p 容器映射的端口号:运行软件的默认端口号 --name 容器名[自定义] IMAGE ID
然后通过redis客户端连接:
- ip: 服务器公网ip
- 端口: 63791
即可连接成功。
其他高级配置以后再写....
现在我有个需求:
进入docker运行的redis内部,查询数据
1. 输入命令,查询要进入的程序。
[root@wangqinmin ~]# docker ps -a
结果:
[root@wangqinmin ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
373859f18930 0f55cf3661e9 "docker-entrypoint..." 2 weeks ago Up 2 weeks 0.0.0.0:63791->6379/tcp redis
54e115dbc5ae mysql:5.6.42 "docker-entrypoint..." 2 weeks ago Up 2 weeks 0.0.0.0:33061->3306/tcp mysql.5.6.42
35937e30972d mysql:5.6.26 "/entrypoint.sh my..." 2 weeks ago Up 2 weeks 0.0.0.0:33060->3306/tcp mysql.5.6.26
可以看见后面有个NAMES: 下面对应的名字为:redis (该名字可以自定义,所以不一定就是redis)
2. 第二个命令:进入redis (下面的reids,就是上面查询的名字)
[root@wangqinmin ~]# docker exec -it redis /bin/bash
3. 第三步: 找到登录redis的客户端 命令: which redis-cli
root@373859f18930:/data# which redis-cli
/usr/local/bin/redis-cli
4. 进入上面的目录,命令:cd /usr/local/bin/
root@373859f18930:/data# cd /usr/local/bin/
root@373859f18930:/usr/local/bin# ls
docker-entrypoint.sh gosu redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-sentinel redis-server
5. 登录redis: 因为我的没有密码所以登录命令:
输入:./redis-cli
效果展示:
root@373859f18930:/usr/local/bin# ./redis-cli
6. 查询所有key命令:
127.0.0.1:6379> keys *