• Docker中安装并配置redis


    一、找到一个合适的docker的redis的版本

    可以去docker hub中去找一下:https://hub.docker.com/_/redis?tab=tags,docker中我选择6.0版本,对应redis真实版本6.0.16。

    image

    image

    二、使用docker拉取redis

    docker pull redis:6.0

    安装好之后使用docker images 即可查看

    image

    三、准备redis的配置文件

    因为需要redis的配置文件,这里最好还是去redis的官方去下载一个redis使用里面的配置文件即可,我下载的是:redis-6.0.16.tar.gz

    redis中文官方网站:http://www.redis.cn/download.html

    redis历史版本地址:http://download.redis.io/releases/

    image

    下载后解压出来:

    image

    这个  redis.conf  文件就是咱们需要的,为了保险,还是拷贝一下,做个备份。

    四、配置redis.conf配置文件

    修改redis.conf配置文件:
    主要配置的如下:

    bind 127.0.0.1      #注释掉这部分,使redis可以外部访问
    daemonize no      #用守护线程的方式启动
    requirepass   你的密码     #给redis设置密码
    appendonly yes   #redis持久化  默认是no
    tcp-keepalive 300      #防止出现远程主机强迫关闭了一个现有的连接的错误 默认是300

    五、创建本地与docker映射的目录,即本地存放的位置

    创建本地存放redis的位置;

    可以自定义,因为我的docker的一些配置文件都是存放在/docker目录下面的,所以我依然在/docker目录下创建一个redis目录,这样是为了方便后期管理

    mkdir -p /docker/redis /docker/redis/data

    配置文件拷贝到刚才创建好的文件里

    我是windows系统,使用ftp拷贝过去,如果你是Linux操作系统,可以直接拷贝过去。

    cp -p redis.conf /docker/redis/

    六、启动docker redis

    启动:

    docker run -d -p 6379:6379 --name redis -v /docker/redis/redis.conf:/etc/redis/redis.conf -v /docker/redis/data:/data --restart=always redis:6.0 redis-server /etc/redis/redis.conf --appendonly yes

    参数解释:

    -p 6379:6379:把容器内的6379端口映射到宿主机6379端口
    -v /data/redis/redis.conf:/etc/redis/redis.conf:把宿主机配置好的redis.conf放到容器内的这个位置中
    -v /data/redis/data:/data:把redis持久化的数据在宿主机内显示,做数据备份
    redis-server /etc/redis/redis.conf:这个是关键配置,让redis不是无配置启动,而是按照这个redis.conf的配置启动
    –appendonly yes:redis启动后数据持久化
    --restart=always:此参数能够使我们在重启docker时,自动启动相关容器。

    七、查看是否启动成功

    查看是否成功启动:sudo docker ps

    1. [root@localhost ~]# sudo docker ps
    2. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
    3. 7e1e3ec55bc3 redis:6.0 "docker-entrypoint.s…" 12 minutes ago Up 2 minutes 0.0.0.0:6379->6379/tcp, :::6379->6379/tcp redis
    4. 0a664907556c postgis/postgis:12-3.2 "docker-entrypoint.s…" 2 days ago Up 2 minutes 0.0.0.0:5432->5432/tcp, :::5432->5432/tcp postgis
    5. [root@localhost ~]#

    可以查看一下日志:docker logs redis

    1. [root@localhost ~]# docker logs redis
    2. 1:C 29 Aug 2022 02:39:04.068 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
    3. 1:C 29 Aug 2022 02:39:04.068 # Redis version=6.0.16, bits=64, commit=00000000, modified=0, pid=1, just started
    4. 1:C 29 Aug 2022 02:39:04.068 # Configuration loaded
    5. _._
    6. _.-``__ ''-._
    7. _.-`` `. `_. ''-._ Redis 6.0.16 (00000000/0) 64 bit
    8. .-`` .-```. ```\/ _.,_ ''-._
    9. ( ' , .-` | `, ) Running in standalone mode
    10. |`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
    11. | `-._ `._ / _.-' | PID: 1
    12. `-._ `-._ `-./ _.-' _.-'
    13. |`-._`-._ `-.__.-' _.-'_.-'|
    14. | `-._`-._ _.-'_.-' | http://redis.io
    15. `-._ `-._`-.__.-'_.-' _.-'
    16. |`-._`-._ `-.__.-' _.-'_.-'|
    17. | `-._`-._ _.-'_.-' |
    18. `-._ `-._`-.__.-'_.-' _.-'
    19. `-._ `-.__.-' _.-'
    20. `-._ _.-'
    21. `-.__.-'
    22. 1:M 29 Aug 2022 02:39:04.069 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
    23. 1:M 29 Aug 2022 02:39:04.069 # Server initialized
    24. 1:M 29 Aug 2022 02:39:04.069 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
    25. 1:M 29 Aug 2022 02:39:04.069 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo madvise > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled (set to 'madvise' or 'never').
    26. 1:M 29 Aug 2022 02:39:04.075 * Ready to accept connections
    27. [root@localhost ~]#
  • 相关阅读:
    CSS-元素的显示与隐藏
    漫画 | 20年了,走投无路的CPU终于躺平了!
    docker 1.2 之docker基本用法
    arduino的包含库文件定义配合vsCode查看最初定义
    CMake教程-第 6 步:添加对测试仪表板的支持
    第二证券|11月制造业PMI为48.0% 专家预计12月将出现边际改善
    探索艾利特机器人丨EC66在物流行业的应用
    mac虚拟机安装配置qt遇到的坑
    MySQL(14):视图
    深度强化学习的组合优化[1] 综述阅读笔记
  • 原文地址:https://blog.csdn.net/qq_30665009/article/details/126586072