Redis远程连接本机——Docker

1. Docker拉取redis镜像并创建容器

1.1 拉取redis镜像

如果要指定redis版本,需要使用redis:(版本),不写默认最新版本

powershell 复制代码
docker pull redis

1.2 创建容器并挂载配置文件

创建一个redis目录,并在其创建一个conf目录和一个data目录,在conf中创建一个文件

powershell 复制代码
mkdir redis    (创建redis目录)
cd redis           
mkdir conf        (在redis目录下,创建conf目录)
mkdir data      (在redis目录下,创建data目录,用于挂载redis 的持久化文件(为了数据的持久化) )  
cd conf
touch redis.conf   (在redis目录下创建redis.conf,用于挂载redis的配置文件)

创建容器,并挂载配置文件等(我的redis目录创建到了我的mydata目录下,mydata目录是我用于放数据库相关目录)

powershell 复制代码
docker run --name redis -p 6379:6379 -v /mydata/redis/data:/data -v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf

如果报错:如

docker: Error response from daemon: driver failed programming external connectivity on endpoint redis (e5321962af3dbff8f3fc05b5e8329541a4524fbf24778427eccc95e8d477e070): (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 6379 -j DNAT --to-destination 172.17.0.4:6379 ! -i docker0: iptables: No chain/target/match by that name.

(exit status 1)).

原因是;docker服务启动时定义的自定义链DOCKER被清除,重启即可 systemctl restart docker

2. Linux终端操作redis

2.1 进入redis容器

powershell 复制代码
docker exec -it redis /bin/bash   (redis是容器名)

会进入到 root@686920bcfc52:/data#

2.2 进入客户端

powershell 复制代码
redis-cli

会进入到 127.0.0.1:6379>

2.3 退出客户端

powershell 复制代码
127.0.0.1:6379> exit
root@686920bcfc52:/data# exit
exit

3. 本地可视化工具连接redis

3.1 可视化工具

Another Redis Desktop Manager 官网

3.2 本地连接

设置redis密码,我们需要从redis的配置文件redis.conf中进行设置,我们在创建容器时已经将容器的配置文件挂载到我们自己的主机文件中,因此在我们主机文件/mydata/redis/conf/redis.conf修改即可

powershell 复制代码
[root@localhost conf]# vim redis.conf
[root@localhost conf]# cat redis.conf
requirepass 123456 

这时在连接redis时,就需要输入密码123456

相关推荐
考虑考虑5 小时前
数据库中的EXISTS
运维·数据库·后端
Wang's Blog5 小时前
Java框架快速入门: Spring Security+OAuth2之数据库和实体类的RBAC改造
java·数据库·spring
梦想平凡6 小时前
百游棋牌源代码开发搭建教程(十):隔离部署、备份恢复与双端验收
java·前端·javascript·数据库·源代码管理
xcLeigh7 小时前
让大模型长出手脚,自己写SQL查数据库(Function Calling初探)
数据库·人工智能·sql·时序数据库·timechoai
小小的木头人7 小时前
Docker 环境下迁移 containerd 数据目录:从 `/var/lib/containerd` 到 `/data/containerd`
linux·docker
yume_sibai8 小时前
06-Rust Web 开发实战(Axum 框架 + 数据库 + JWT 认证 + 中间件 + 部署)
前端·数据库·rust
AugustRed9 小时前
Neo4j 图数据库原理 + 应用场景简单介绍
数据库·neo4j
Gl�ria9 小时前
Redis 高可用架构对比
数据库·redis
IpdataCloud9 小时前
高可用的IP数据接口平台有哪些?从可用性、P99延迟到离线部署的评估框架(含代码)
数据库·tcp/ip·ip
呆萌很10 小时前
MySQL 数据库和表的管理操作(命令行)
数据库·mysql