• 在Docker中安装redis


    二、Docker安装redis

    1、查看redis镜像
    docker search redis
    
    • 1

    在这里插入图片描述

    2、拉取redis镜像(不指定版本,默认拉取最新版本)
    docker pull redis
    
    • 1

    在这里插入图片描述

    3、修改redis配置文件和持久化目录

    通过挂载配置文件的方式启动redis容器
    (挂载:将宿主的文件和容器内部目录相关联,相互绑定,在宿主机内修改文件的话也随之修改容器内部文件)

    1)、挂载redis的配置文件

    2)、挂载redis 的持久化文件目录(为了数据的持久化)
    配置文件目录可以根据需要自行配置,我这边的目录为:

    mkdir -p /docker/redis/smart-park-redis/conf  (配置文件目录)
    mkdir -p /docker/redis/smart-park-redis/data  (数据持久化目录)
    
    • 1
    • 2

    3)、修改配置文件

     1. protected-mode no,           保护模式,限制为本地访问,修改后解除保护模式 
     2. requirepass  ^L{2fd9804A!     设置访问密码
    
    • 1
    • 2
    4、通过命令启动redis镜像
    docker run --restart=always  -p 6379:6379 --name smart-park-redis  --privileged=true  -v /docker/redis/smart-park-redis/conf/redis.conf:/etc/redis/redis.conf -v /docker/redis/smart-park-redis/data:/data -d redis redis-server /etc/redis/redis.conf  --appendonly yes  --requirepass ^L{2fd9804A!
    
    • 1
    4.1、 命令详解
    1、--restart=always 总是开机启动
    2、-p 6379:6379 前面的6379是宿主机端口,后面是容器里面的端口
    3、--name 给容器命名
    4、-v 数据卷挂载     冒号前是宿主机目录,冒号后是容器目录
      /docker/redis/smart-park-redis/conf/redis.conf:/etc/redis/redis.conf 
      这里是将 liunx 路径下的redis.conf 和redis下的redis.conf 挂载在一起。
      /docker/redis/smart-park-redis/data:/data  持久化同上
    5、-d redis 表示后台启动redis (开启守护进程,和配置文件里面的daemonize yes相同的作用,不要同时存在,不然会报错,推荐使用-d命令)
       redis-server /etc/redis/redis.conf 
       以配置文件启动redis,加载容器内的conf文件,但是最终找到的是挂载的目录 /etc/redis/redis.conf 
       也就是宿主机下的/docker/redis/smart-park-redis/conf/redis.conf
    6、--appendonly yes 开启redis 持久化
    7、--requirepass ^L{2fd9804A!   设置密码为^L{2fd9804A!
    8、--privileged=true  给容器加上特定权限,否则会报没有权限错误
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    在这里插入图片描述启动成功。

    5、启动失败怎么办

    如果以上命令启动失败,可以先尝试重启一下docker

    systemctl restart docker
    
    • 1

    重启docker后再输入启动命令,如果还是启动失败,具体报错具体分析。

    6、状态查询
    docker ps -a
    
    • 1

    在这里插入图片描述

    7、开启宿主机端口

    启动redis容器时,设置了宿主机端口,那宿主机的端口就需要开启的,设置命令如下:

    查询宿主机开放端口:

    firewall-cmd --list-port
    
    • 1

    开启宿主机端口:

    firewall-cmd --add-port=6379/tcp  --permanent
    
    • 1

    –permanent表示永久开放端口

    重启防火墙,刷新端口

    systemctl restart firewalld
    
    • 1

    redis中的6379不能远程访问,可以使用如下命令开启远程访问:

    /sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEPT
    
    • 1
    8、卸载redis
    8.1、停止容器
    docker stop smart-park-redis
    
    • 1
    8.2、删除容器
    docker rm smart-park-redis
    
    • 1
    8.3、删除镜像

    删除镜像之前,先查询镜像ID

    docker images
    
    • 1

    找到对应需要删除的容器id
    在这里插入图片描述

    docker rmi 7614ae9453d1
    
    • 1
  • 相关阅读:
    python 删除pdf 空白页
    数据结构之单链表
    idea 类注释模板和方法注释模板设置
    Linux开发常用ps命令选项详解
    [MT8766][Android12]user版本关闭selinux导致无法开机问题
    leetcode 647. 回文子串、516. 最长回文子序列
    各种字符串Hash函数比较
    在window11上安装sshd
    Word2Vec浅谈
    和平精英中传群岛怎么进 和平精英中传群岛进入攻略
  • 原文地址:https://blog.csdn.net/lbd_123/article/details/126401917