Docker安装Redis并使用Another Redis Desktop Manager连接 - 追逐时光者
source link: https://www.cnblogs.com/Can-daydayup/p/16653903.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
文章正文:
Redis简单介绍
Redis全称是Remote DIctionary Service,即远程字典服务。Redis 是一个使用C语言编写的、开源的(遵守 BSD 协议)、高性能的、支持网络、可基于内存亦可持久化的日志型、Key-Value的NoSQL数据库。
此外,我们还可以用 docker search redis
命令来查看可用版本:
docker search redis
输出如下:
拉取最新版的Redis镜像
这里我们拉取官方的最新版本的镜像:
docker pull redis:latest
查看本地安装的镜像
使用以下命令来查看redis镜像是否成功拉取到本地:
docker images
设置Docker中的Redis容器运行外网连接
首先Docker运行的每个容器都是隔离的,Redis默认不允许外部连接,因此想要部署在Docker容器内的应用连接上Redis,需要修改Redis默认配置,这里我们以配置文件运行redis即可。
1、下载redis.conf文件
首先创建挂载目录:
sudo mkdir redis
redis.conf
是Redis的核心配置文件,默认docker运行的redis是不存在配置文件的,这里可以先从官网下载:
wget http://download.redis.io/redis-stable/redis.conf
2、设置redis.conf文件权限
sudo chown -R $USER redis.conf
-R或-recursive:递归处理,将指定目录下的所有文件及子目录一并处理
chown [-R] [用户名称:组名称] [文件或目录]
3、修改默认配置信息
vi redis.conf
i 开始编辑
编辑完成后esc+:wq保存修改
- bind 127.0.0.1 -::1 #这行要注释掉,解除本地连接限制
- protected-mode no #默认yes,如果设置为yes,则只允许在本机的回环连接,其他机器无法连接。
- daemonize no #默认no 为不守护进程模式,docker部署不需要改为yes,docker run -d本身就是后台启动,不然会冲突
- requirepass 123456 #设置密码
- appendonly yes #持久化
创建并运行一个Redis容器和设置链接密码
Redis镜像拉取成功以后,我们可以使用以下命令来运行创建一个名为redis-test的redis容器:
docker run --name redis-test -p 6379:6379 -v /docker-data/redis/redis.conf:/etc/redis/redis.conf -v /docker-data/redis:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes --requirepass 123456
参数说明:
- --name redis-test:容器名称。
- -p 6379:6379:映射容器服务的 6379 端口到宿主机的 6379 端口。外部可以直接通过宿主机ip:6379 访问到 Redis 的服务。
- -v /docker-data/redis/redis.conf:/etc/redis/redis.conf : 将主机中配置文件挂载到容器中
- -v /docker-data/redis:/data : 将主机中data挂载到容器的/redis
- -d redis redis-server /etc/redis/redis.conf:表示后台启动redis,以配置文件启动redis,加载容器内的conf文件。
- redis-server /etc/redis/redis.conf : 容器中以配置文件方式启动redis
- redis-server --appendonly yes : 在容器执行redis-server启动命令,并打开redis持久化配置
- redis-server --requirepass 123456 :redis连接密码设置
验证Redis是否安装成功
最后我们可以通过 docker ps 命令查看容器的运行信息:
docker ps
接着我们通过 redis-cli 连接测试使用 redis 服务。
docker exec -it redis-test /bin/bash redis-cli # 密码登录 auth 123456
Another Redis Desktop Manager介绍:
Redis DeskTop Manager自从进入了0.9.9版本就开始付费使用或者贡献代码获得免费使用期限。这时候,Another Redis DeskTop Manager作为一款基于nodejs开发的免费的Redis可视化管理工具,可以运行在Windows、Linux、Mac平台,而且是开源免费应用,就很推荐使用了。
gitee源码地址:https://gitee.com/qishibo/AnotherRedisDesktopManager
window .exe安装包下载地址:https://gitee.com/qishibo/AnotherRedisDesktopManager/releases
Redis Client On Error: Error: connect ETIMEDOUT xxx.xxx.xxx:6379 Config right?
由于上面我已经对redis.conf配置文件进行了允许外网连接配置的修改,报这个错误我猜测是因为服务器没有配置6379的开发端口,所以需要到服务器后端管理中添加6379端口配置。
Another Redis Desktop Manager测试连接:
参考文章:
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK