Docker 安装 Redis

  • 获取 redis 镜像
// 查找 redis 镜像
docker search redis
// 拉取 redis 镜像
docker pull redis:5.0
pull successful

Tip: 不加版本号默认获取最新版本

  • 查看本地镜像
docker images
image list
  • 准备启动容器
    1.创建配置文件目录存放redis.conf ,文件从官网地址 下载
mkdir /usr/local/docker
vi /usr/local/docker/redis.conf
  • 修改redis.conf 文件
bind 127.0.0.1 #注释掉这部分,这是限制redis只能本地访问

protected-mode no #默认yes,开启保护模式,限制为本地访问

daemonize no#默认no,改为yes意为以守护进程方式启动,可后台运行,除非kill进程,改为yes会使配置文件方式启动redis失败

databases 16 #数据库个数(可选),我修改了这个只是查看是否生效。。

dir  ./ #输入本地redis数据库存放文件夹(可选)

appendonly yes #redis持久化(可选)
  • 启动 redis
docker run   --privileged=true -p 6379:6379 --name myredis -v /usr/local/docker/redis.conf:/etc/redis/redis.conf -v /usr/local/docker/data:/data -d redis:5.0.2 redis-server /etc/redis/redis.conf --appendonly yes

  • 命令解释说明:

-p 6379:6379 端口映射:前表示主机部分,:后表示容器部分。

--name myredis 指定该容器名称,查看和进行操作都比较方便。

-v 挂载目录,规则与端口映射相同。

为什么需要挂载目录:个人认为docker是个沙箱隔离级别的容器,这个是它的特点及安全机制,不能随便访问外部(主机)资源目录,所以需要这个挂载目录机制。

-d redis 表示后台启动redis

redis-server /etc/redis/redis.conf 以配置文件启动redis,加载容器内的conf文件,最终找到的是挂载的目录/usr/local/docker/redis.conf

  • 检查是否启动成功
docker  ps 

发现新的 redis 容器并没有启动成功, 查看 log

docker logs (容器 ID or 容器名称)
fail.png

fail.png

会依次报这些错误, 依次注释掉, 然后就可以运行成功了
出现这些原因可能是redis.conf 版本问题导致, 至于为什么, 还有待去研究, 希望大佬有知道的, 还望能指点一二.

小弟先谢为敬!

最重要的一点 : 如果需要在外网访问 Redis 建议设置密码, 防止被攻击!!!
最重要的一点 : 如果需要在外网访问 Redis 建议设置密码, 防止被攻击!!!
最重要的一点 : 如果需要在外网访问 Redis 建议设置密码, 防止被攻击!!!

  • 设置密码 redis.conf
requirepass testtest // redis.conf 文件搜索, 'testtest' 换成你自己的密码即可 
successful.png

当你看到这画面的时候, 就说明启动成功了!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容