【Redis】在Docker中安装Redis以及相关报错解决


一、在docker里面手动安装(可能报错)

根据视频进行的redis安装
1、使用docker拉取centos7镜像并创建容器

docker pull centos:centos7

docker run -itd --privileged=true --name centos7 centos:centos7 /usr/sbin/init

2、下载redis-6.2.6.tar.gz
进入redis所在文件夹打开命令行
然后输入

docker cp redis-6.2.6.tar.gz 容器ID:/usr/local/src

3、安装Redis依赖

#进入容器
docker exec -it centos7 /bin/bash

yum install -y gcc tcl

4、安装Redis

cd /usr/local/src
# 解压
tar -zxvf redis-6.2.6.tar.gz
cd redis-6.2.6
yum install make
make && make install

5、修改相关配置

cp redis.conf redis.conf.bck
vi redis.conf

bind 0.0.0.0
daemonize yes
requirepass 123321
logfile "redis.log"

6、设置开机自启
创建自启文件

vi /etc/systemd/system/redis.service

复制粘贴以下内容

[Unit]
Description=redis-server
After=network.target


[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /usr/local/src/redis-6.2.6/redis.conf
PrivateTmp=true


[Install]
WantedBy=multi-user.target

重新加载服务

systemctl daemon-reload

注意,此处如果前面在创建容器时没有添加参数 --privileged=true,则会报错
Failed to get D-Bus connection: Operation not permitted

Error:Failed to get D-Bus connection: Operation not permitted的解决方法

停止容器并删除,然后重新创建

docker stop centos7
docker rm centos7

docker run -itd --privileged=true --name centos7 centos:centos7 /usr/sbin/init

然后从头再来
如果无法解决该问题,根据这篇文章的说法,是由于docker和centos7之间的版本bug导致的。


二、一步到位法

参考
都使用docker了,还是别费心在环境配置上了
1、拉取镜像

docker pull redis:6.2.6

2、下载redis.conf文件,然后修改以下四个属性

bind 0.0.0.0
##守护模式一定要no,要不然容器会一直重启
daemonize no
requirepass 123321
logfile "redis.log"

3、将conf文件与data文件夹如此排列
在这里插入图片描述
根据文件位置,生成容器命令为

docker run --restart=always \
-p 6379:6379 \
--privileged \
--name myredis \
-v /var/redis/redis.conf:/etc/redis/redis.conf \
-v /var/redis/data:/data \
-it redis:6.2.6 redis-server /etc/redis/redis.conf

参数含义为:

  • –restart=always:开机启动
  • -p:挂载端口
  • –privileged:容器的特权模式
  • -v:挂载,前面是主机的为文件,后面是容器内文件
  • redis-server /etc/redis/redis.conf 以配置文件启动redis,加载容器内的 redis.conf文件

进入容器并测试

docker exec -it myredis /bin/bash
redis-cli
auth 123321  #根据配置中的requiredpass,验证密码

在这里插入图片描述

相关推荐

  1. Docker 安装 Redis

    2024-03-30 09:40:02       21 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-30 09:40:02       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-30 09:40:02       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-30 09:40:02       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-30 09:40:02       18 阅读

热门阅读

  1. openGauss JDBC客户端负载均衡与读写分离

    2024-03-30 09:40:02       19 阅读
  2. 文件系统知识内容详解

    2024-03-30 09:40:02       18 阅读
  3. TDengine 使用爬坑

    2024-03-30 09:40:02       20 阅读
  4. python笔记(7)List(列表)

    2024-03-30 09:40:02       25 阅读