当前有个华为云HECS云服务器,已经安装了docker环境,准备下docker环境下安装redis。
一、HECS云服务器安装docker
登录华为HECS云服务器,安装docker环境。
安装docker参考如下文章:
华为云HECS安装docker并安装mysql-CSDN博客
二、拉取redis镜像
1、查询redis镜像
bash
docker search redis
2、拉取redis镜像
执行pull命令拉取,不跟版本号的情况下,拉取最新的版本
bash
docker pull redis

3、查看镜像,确认拉取成功
bash
docker images |grep redis
出现redis镜像信息,证明拉取成功

三、配置redis
1、获取redis安装包
下载地址:Download | Redis
2、获取redis.conf配置文件
解压安装包,获取redis.conf配置文件

3、编辑redis.conf文件
bind 127.0.0.1 #注释掉这部分,使redis可以外部访问
protected-mode no #默认yes,开启保护模式,限制为本地访问
daemonize no #用守护线程的方式启动
requirepass 123456 #给redis设置密码
appendonly yes #redis持久化 默认是no
logfile "/var/log/redis.log" #日志文件位置
4、宿主机创建目录
创建redis的conf、data、log三个目录
mkdir /usr/local/redis
mkdir /usr/local/redis/conf
mkdir /usr/local/redis/data
mkdir /usr/local/redis/log

5、上传redis.conf至conf目录

进入 conf目录,输入指令:ll,查看 redis.conf文件的详细信息。
输入指令:chmod 777 redis.conf,将 redis.conf日志文件的权限设置为可读写。
输入指令:ll,查看是否修改成功。

不改为读写权限报如下错误:

6.log目录新建redis.log的空文件

修改日志文件权限为读写
进入 log 目录,输入指令:ll,查看 redis.log 文件的详细信息。
输入指令:chmod 777 redis.log,将 redis.log 日志文件的权限设置为可读写。
输入指令:ll,查看是否修改成功。

四、启动redis容器
1、启动
命令如下:
bash
docker run -it \
-p 6379:6379 \
--name redis \
--restart=always \
--privileged=true \
-v /usr/local/redis/conf/redis.conf:/etc/redis/redis.conf \
-v /usr/local/redis/data/:/data \
-v /usr/local/redis/log/redis.log:/var/log/redis.log \
-d redis \
redis-server /etc/redis/redis.conf \
--appendonly yes \
--requirepass 123456
参数解析:
【-it】
i:以交互模式运行容器,通常与 -t 同时使用;
t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;
【-p 6379:6379】 将宿主机6379端口与容器内6379端口进行映射;
【--name】 给容器命名;
【 --restart=always】 开机启动,失败也会一直重启;
【--privileged=true】获取宿主机root权限。
【-v】 将宿主机目录或文件与容器内目录或文件进行挂载映射;
【-d】表示后台启动redis;
【redis-server /etc/redis/redis.conf】 以配置文件启动redis,加载容器内的conf文件;
【--appendonly yes】 开启redis 持久化;
【--requirepass qwe123】 强烈建议设置密码,并且将密码设置为高强度复杂;
2、查看是否启动成功
命令:
bash
docker ps

3、检查日志
输入对应指令:
docker logs redis
进入 log 目录,
输入
cat redis.log
查看日志内容。
五、进入Redis容器
输入exec指令:
docker exec -it redis /bin/bash
六、验证redis运行成功
运行 redis 客户端
指令:
redis-cli
输入指令:ping,显示 PONG 代表测试成功!
【docker容器相关命令】
查看所有容器 docker ps -a
查看容器运行日志 docker logs 容器名称/容器id
停止容器运行 docker stop 容器name/容器id
终止容器后运行 docker start 容器name/容器id
容器重启 docker restart 容器name/容器id
删除容器 docker rm 容器name/容器id
七、设置HECS安全组,放行redis端口

八、使用RDM工具访问Reids

1、连接设置

2、查看Redis数据
