首页 > 数据库 >linux下,docker安装redis

linux下,docker安装redis

时间:2023-01-10 17:02:06浏览次数:55  
标签:容器 max redis conf linux docker data

一、Docker搜索redis镜像

命令:docker search <镜像名称>

docker search redis

linux下,docker安装redis_配置文件

可以看到有很多redis的镜像,此处因没有指定版本,所以下载的就是默认的最新版本 。redis latest.

二、Docker拉取镜像

命令::docker pull <镜像名称>:<版本号>

docker pull redis

linux下,docker安装redis_redis_02

三、Docker挂载配置文件

接下来就是要将redis 的配置文件进行挂载,以配置文件方式启动redis 容器。(挂载:即将宿主的文件和容器内部目录相关联,相互绑定,在宿主机内修改文件的话也随之修改容器内部文件)

  • 挂载redis的配置文件
  • 挂载redis 的持久化文件(为了数据的持久化)。

liunx 下redis.conf文件位置: /www/data/redis/conf/redis.conf

liunx 下redis的data文件位置 : /www/data/redis/data

mkdir -p /www/data/redis/conf/ 命令 是不存在就直接创建/home/redis/myredis 文件夹

redis.conf 是我手动上传的。(​​https://raw.githubusercontent.com/redis/redis/7.0/redis.conf​​,从官方下载上传)

linux下,docker安装redis_docker_03

四、启动redis 容器

docker run --restart=always --log-opt max-size=1000m --log-opt max-file=2 -p 6379:6379 --name myredis -v /www/data/redis/conf/redis.conf:/etc/redis/redis.conf -v /www/data/redis/data:/data -d redis redis-server /etc/redis/redis.conf  --appendonly yes  --requirepass 123456

–restart=always 总是开机启动

–log是日志方面的

-p 6379:6379 将6379端口挂载出去

–name 给这个容器取一个名字

-v 数据卷挂载

/www/data/redis/conf/redis.conf:/etc/redis/redis.conf 这里是将 liunx 路径下的myredis.conf 和redis下的redis.conf 挂载在一起。

/www/data/redis/data:/data 这个同上

-d redis 表示后台启动redis

redis-server /etc/redis/redis.conf 以配置文件启动redis,加载容器内的conf文件,最终找到的是挂载的目录 /etc/redis/redis.conf 也就是liunx下的/home/redis/myredis/myredis.conf

–appendonly yes 开启redis 持久化

–requirepass 123456 设置密码 (如果你是通过docker 容器内部连接的话,就随意,可设可不设。但是如果想向外开放的话,一定要设置。)

五、测试

1、通过docker ps指令查看启动状态

linux下,docker安装redis_redis_04

docker ps -a |grep redis # 通过docker ps指令查看启动状态,是否成功.

2、查看容器运行日志

命令:docker logs --since 10m <容器名>

此处 --since 10m 是查看此容器10分钟之内的日志情况。

docker logs --since 10m redis

3、容器内部连接进行测试

进入容器

命令:docker exec -it <容器名> /bin/bash

此处跟着的redis-cli是直接将命令输在上面了。

docker exec -it redis redis-cli

linux下,docker安装redis_docker_05

也可以如下操作:

linux下,docker安装redis_配置文件_06

进入之后,我直接输入查看命令:

error是没有权限验证。(因为设置了密码的。)

验证密码:

auth 密码

查看当前redis有没有设置密码:(得验证通过了才能输入的)

config get requirepass

六、配置文件

vim redis.conf

# bind 192.168.1.100 10.0.0.1
# bind 127.0.0.1 ::1
#bind 127.0.0.1

protected-mode no

port 6379

tcp-backlog 511

requirepass 000415

timeout 0

tcp-keepalive 300

daemonize no

supervised no

pidfile /var/run/redis_6379.pid

loglevel notice

logfile ""

databases 30

always-show-logo yes

save 900 1
save 300 10
save 60 10000

stop-writes-on-bgsave-error yes

rdbcompression yes

rdbchecksum yes

dbfilename dump.rdb

dir ./

replica-serve-stale-data yes

replica-read-only yes

repl-diskless-sync no

repl-disable-tcp-nodelay no

replica-priority 100

lazyfree-lazy-eviction no
lazyfree-lazy-expire no
lazyfree-lazy-server-del no
replica-lazy-flush no

appendonly yes

appendfilename "appendonly.aof"

no-appendfsync-on-rewrite no

auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb

aof-load-truncated yes

aof-use-rdb-preamble yes

lua-time-limit 5000

slowlog-max-len 128

notify-keyspace-events ""

hash-max-ziplist-entries 512
hash-max-ziplist-value 64

list-max-ziplist-size -2

list-compress-depth 0

set-max-intset-entries 512

zset-max-ziplist-entries 128
zset-max-ziplist-value 64

hll-sparse-max-bytes 3000

stream-node-max-bytes 4096
stream-node-max-entries 100

activerehashing yes

hz 10

dynamic-hz yes

aof-rewrite-incremental-fsync yes

rdb-save-incremental-fsync yes

七、Docker删除Redis

6.1、删除Redis 容器

查看所有在运行的容器:

命令:

docker ps -a

停止运行的Redis

停止命令:docker stop <容器名>

docker stop redis # redis 是我启动redis 命名的别

删除redis 容器:

删除容器命令: docker rm <容器名>

docker rm redis

6.2、删除Redis镜像

删除容器后,我们开始删除redis镜像。

查看全部镜像 命令:docker images

删除镜像 命令 docker rmi <容器 id>

docker rmi 739b59b96069 # 这是我镜像redis id

可以看到Redis 的镜像已经被删除啦。


标签:容器,max,redis,conf,linux,docker,data
From: https://blog.51cto.com/wyf1226/6000468

相关文章

  • docker 部署 Oracle 19c
    标签(空格分隔):Oracle系列一:系统环境介绍操作系统:centos7.9x64oracle19c配置说明:主机名:cat/etc/hosts----172.16.10.11flyfish11172.16.10.12fl......
  • python之路 57 linux 基础 命令与执行效果
    虚拟环境的安装与配置1.VMware软件安装这里有一个15版本和一个16版本的链接:https://pan.baidu.com/s/1vkNxxQ6NS9q7XYJ6qiVMaQ提取码:t3lf2.软件配置与Xshell远程工......
  • docker 部署minio
     1dockerpullminio/minio:RELEASE.2022-08-26T19-53-15Z2 dockerrun-p9000:9000-p9090:9090\--net=host\--nameminio\-d--restart=alway......
  • linux 内存管理(四)malloc--mmap--brk
    用strace分析malloc内存申请过程。长话短说,申请内存空间一般就两种方法,一种是malloc,另一种是mmap映射空间。 在使用malloc()分配内存的时候,可能系统调用brk(),也可能调用m......
  • linux系统命令
    linux系统命令linux命令基础知识命令提示符管理员用户:[root@vm-lz~]#root指当前登录主机的用户vm-lz是主机(我们这里是虚拟机)名称~是家目录,默认环境为家目录......
  • Linux 使用模式匹配文件名批量删除文件
    举例1:删除文件名中包含abc的文件#先列出来确认一下find./dir-typef-name'*abc*'#执行删除命令find./dir-typef-name'*abc*'-delete举例2:删除文件名......
  • Linux定时任务
    定时任务一、概述定时任务:用于执行在Linux中的重复行工作:命令(同步系统时间),脚本(备份,系统巡检)类似于闹钟二、服务使用流程服务使用流程说明部署安装这个服务......
  • docker-compose 构建项目
    1.创建一个net7webapi项目配置docker-compose.yml支持  Deploy中放的docker-compose.yml 文件 2.dockerfile文件 #Seehttps://aka.ms/containerfa......
  • 【Linux】常用nvidia-smi命令详解
    ✨nvidia-smiNVIDIA系統管理介面(nvidia-smi)是一個命令行工具,基於NVIDIAManagementLibrary(NVML)之勝,旨在協助管理和監控NVIDIAGPU設備。此实用程序允许管理员查......
  • Docker搭建测试用例平台 TestLink
    Testlink是基于WEB的测试用例管理系统,主要功能是:测试项目管理、产品需求管理、测试用例管理、测试计划管理、测试用例的创建、管理和执行,并且还提供了统计功能。Testlink......