前言
首先确保centos服务器已经安装了docker
安装
- 搜索redis
docker search redis
- 拉取redis镜像
docker pull redis
- 准备redis的相关目录
mkdir -p /usr/local/docker/redis/conf
mkdir -p /usr/local/docker/redis/data
注意:可以自己定义路径文件夹
4.下载reids配置文件 在conf目录下运行此命令会直接下载好redis.conf
wget https://raw.githubusercontent.com/antirez/redis/5.0/redis.conf -O redis.conf
5.redis配置文件修改
# bind 127.0.0.1 注释
protected-mode yes 改成了 no # 启用保护模式
6.docker启动redis
docker run -d --privileged=true -p 6379:6379 --restart always -v /usr/local/docker/redis/conf/redis.conf:/etc/redis/redis.conf -v /usr/local/docker/redis/data:/data --name redis redis redis-server /etc/redis/redis.conf --appendonly yes
- 前边是宿主机端口 后面是docker使用的端口 上面启动是没有采用密码的。直接连接即可
- --appendonly yes 开启数据持久化
如果临时修改了redis.conf文件需要重新加载以下配置文件使用如下命令:
systemctl restart network && systemctl restart docker # 重启network服务
docker exec -ti myredis redis-cli -h localhost -p 6379 # 进入redis
优化
上述步骤创建容器是,没有给redis设置密码,且端口号是默认的,容器被攻击,所以要修改端口号并设置密码
- 方式一:
通过在创建容器的命令后面追加:
--requirepass XXXX # XXXX为密码
docker run -d --privileged=true -p XXXX:6379 --restart always -v /root/docker/redis/conf/redis.conf:/etc/redis/redis.conf -v /root/docker/redis/data:/data --name myredis redis redis-server /etc/redis/redis.conf --appendonly yes --requirepass XXXX
- 方式二: 修改配置文件, 找到配置文件里面的requirepass去掉注释,加上你的密码:
requirepass XXXX
然后启动的时候挂在即可, -v /usr/local/docker/redis/conf/redis.conf:/etc/redis/redis.conf前面/usr/local/docker/redis/conf/redis.conf是宿主机的路径。
docker run -d --privileged=true -p XXXX:6379 --restart always -v /usr/local/docker/redis/conf/redis.conf:/etc/redis/redis.conf -v /usr/local/docker/redis/data:/data --name redis redis redis-server /etc/redis/redis.conf --appendonly yes
使用客户端连接redis
客户端下载,因为官网的要收费,我在网上找了一个破解版的,不可用于商业途径,后果自负。
网盘地址:链接:pan.baidu.com/s/1-iTFTyPQ…
提取码:a8om
安装完之后,可能会无法运行,因为少一个dll文件,这里我也准备好了一个安装包,安装好之后,就可以正常运行了。
提取码:ntx4
启动客户端,连接即可,如果是远程的,记得地址和端口改成服务器地址和容器端口