docker安装redis并持久化数据

这篇具有很好参考价值的文章主要介绍了docker安装redis并持久化数据。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 创建挂载目录

sudo mkdir -p /home/redis/conf
sudo mkdir -p /home/redis/data
sudo touch /home/redis/conf/redis.conf

cat > /home/redis/conf/redis.conf << EOF
appendonly yes
EOF
root@k8s-master:/home/redis# ls
conf  data
root@k8s-master:/home/redis# tree /home/
/home/
└── redis
    ├── conf
    │   └── redis.conf
    └── data

3 directories, 1 file
root@k8s-master:/home/redis# 

2. 运行容器

docker run -p 6379:6379 --name redis --restart=always  \
-v /home/redis/data:/data  \
-v /home/redis/conf/redis.conf:/etc/redis/redis.conf  \
-d redis:5.0.5 redis-server /etc/redis/redis.conf

root@k8s-master:/home/redis# docker run -p 6379:6379 --name redis --restart=always  \
> -v /home/redis/data:/data  \
> -v /home/redis/conf/redis.conf:/etc/redis/redis.conf  \
> -d redis:5.0.5 redis-server /etc/redis/redis.conf
904689cd1b093c967f93072b5a2ad1df4c481515acf5188db4345853bfd25db3
root@k8s-master:/home/redis# docker ps -l
CONTAINER ID   IMAGE         COMMAND                  CREATED         STATUS         PORTS                                       NAMES
904689cd1b09   redis:5.0.5   "docker-entrypoint.s…"   6 seconds ago   Up 5 seconds   0.0.0.0:6379->6379/tcp, :::6379->6379/tcp   redis
root@k8s-master:/home/redis# 

3. 进入容器

docker exec -it redis /bin/bash #进入容器
redis-cli #登录redis
set name mqq
get name
exit

root@k8s-master:/home/redis# docker exec -it redis /bin/bash #进入容器
root@904689cd1b09:/data# redis-cli
127.0.0.1:6379> set name mqq
OK
127.0.0.1:6379> get name
"mqq"
127.0.0.1:6379> exit
root@904689cd1b09:/data# exit
exit
root@k8s-master:/home/redis# cd /home/redis/data/
root@k8s-master:/home/redis/data# ls
appendonly.aof
root@k8s-master:/home/redis/data# cat appendonly.aof 
*2
$6
SELECT
$1
0
*3
$3
set
$4
name
$3
mqq
root@k8s-master:/home/redis/data# 

4. 重启容器查看数据还在

docker rm -f redis #删除容器
docker run -p 6379:6379 --name redis --restart=always  -v /home/redis/data:/data -v /home/redis/conf/redis.conf:/etc/redis/redis.conf -d redis:5.0.5 redis-server /etc/redis/redis.conf #重新启动容器
docker exec -it redis /bin/bash #进入容器
redis-cli
get name
exit
root@k8s-master:/home/redis/data# docker rm -f redis
redis
root@k8s-master:/home/redis/data# docker run -p 6379:6379 --name redis --restart=always  -v /home/redis/data:/data -v /home/redis/conf/redis.conf:/etc/redis/redis.conf -d redis:5.0.5 redis-server /etc/redis/redis.conf
81a02a81e76a6b9cb7e322cb3d1c8c94888cbebbdfb37dbbf44dcf49f3f6f93e
root@k8s-master:/home/redis/data# docker exec -it redis /bin/bash
root@81a02a81e76a:/data# redis-cli  
127.0.0.1:6379> get name
"mqq"
127.0.0.1:6379> exit
root@81a02a81e76a:/data# exit 
exit
root@k8s-master:/home/redis/data#

5.用redis远程工具测试

这里是没有任何的密码
docker安装redis并持久化数据,docker容器相关,docker,redis,容器

6. 给redis设置登录密码

6.1 修改配置文件

#这个文件添加了requirepass Maqiang,密码是Maqiang
cat /home/redis/conf/redis.conf
appendonly yes
requirepass Maqiang
docker restart redis #重启容器

6.2 用redis远程工具无密码无法登录

docker安装redis并持久化数据,docker容器相关,docker,redis,容器

6.3 用redis远程工具用密码登录

密码是刚才设置的Maqiang
docker安装redis并持久化数据,docker容器相关,docker,redis,容器文章来源地址https://www.toymoban.com/news/detail-670043.html

到了这里,关于docker安装redis并持久化数据的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 小白到运维工程师自学之路 第六十二集 (docker持久化与数据卷容器)

    一、概述 Docker持久化是指将容器中的数据持久保存在主机上,以便在容器重新启动或迁移时不丢失数据。由于Docker容器是临时和可变的,它们的文件系统默认是易失的,这意味着容器中的任何更改或创建的文件都只存在于此容器的生命周期内。但是,在许多场景中,我们希望

    2024年02月14日
    浏览(39)
  • Docker持久化固定容器IP

    基于Docker引擎创建Docker容器,在默认条件下创建容器是bridge桥接模式,启动容器IP地址是DHCP随机分配并且递增的,而且容器之间可以互相通信,网段也是固定的。 当Docker容器一旦关闭再次启动,就会导致容器的IP地址再次重新随机分配,而且有部分容器在部署的时候是不需要

    2024年02月02日
    浏览(35)
  • yapi容器化docker部署以及mongodb容器的持久化挂载异常问题

    通过docker形式部署yapi,需要准备一个mongodb,然后直接在一个空文件夹里写好Dockerfile,其中通过wget下载yapi的zip包。 基本按照这篇文章:https://www.modb.pro/db/149666 来处理即可 把mongodb的docker 跑起来, --auth 表示需要密码才能访问 注意 原文中启动mongo的容器是这样的 首先创建Mon

    2024年02月14日
    浏览(54)
  • 【2023】Redis数据持久化

    Redis是基于内存的NoSQL数据库,读写速度很快,但是存储在内存中的Redis数据会在服务器重启后丢失。 然而在一些场景中,需要长久的保存数据,所以需要把内存中的数据持久化的保存在硬盘中。 Redis持久化提供两种方式: 1️⃣:AOF(Append Only File)只追加文件 2️⃣:RDB(

    2024年02月10日
    浏览(56)
  • redis数据安全(一)数据持久化

     一、Redis数据安全措施: 1、将数据持久化至硬盘 2、将数据复制至其他机器; 复制是在数据持久化的基础上进行的。 二、将数据持久化至硬盘 1、介绍:Redis是一个基于内存的数据库,它的数据是存放在内存中,内存有个问题就是关闭服务或者断电会丢失。Redis的数据也支持

    2024年01月20日
    浏览(43)
  • Redis 7 教程 数据持久化

            RDB 持久化以指定的时间间隔执行数据集的时间点快照 。         把某一时刻的数据和状态以文件的形式写到磁盘上,即使出现故障宕机,快照文件也不会丢失,数据的可靠性得到保证。快照文件就是RDB(Redis DataBase)文件(dump.rdb)          在指定的时间间隔内将

    2024年02月11日
    浏览(42)
  • Mac M系列芯片(M1/M2)Docker安装MySQL并持久化数据与配置

    本文基于MySQL5.7.42进行说明 DockerHub镜像仓库-mysql镜像 常规命令(不适用),提示 no matching manifest for linux/arm64/v8 in the manifest list entries  到DockerHub查看MySQL5.7.42的镜像,可以看到确实没有 linux/arm64/v8 版本的镜像  因此我们要另辟蹊径,加入指定架构的参数进行拉取 --platform li

    2024年02月04日
    浏览(66)
  • redis原理(四)数据安全之数据持久化

    目录 一、RDB快照持久化 原理 二、RDB快照持久化配置(redis.conf): 三、触发RDB备份: 1、自动备份,需配置备份规则: 2、手动执行命令备份(save | bgsave): 3、flushall命令: 四、RDB的备份恢复: 五、RDB优缺点: 以下配置以Redis-x64-3.2.100.zip为例,介绍下 RDB快照持久化  一、

    2024年01月17日
    浏览(39)
  • redis数据安全(二)数据持久化 RDB

    目录 一、RDB快照持久化 原理 二、RDB快照持久化配置(redis.conf): 三、触发RDB备份: 1、自动备份,需配置备份规则: 2、手动执行命令备份(save | bgsave): 3、flushall命令: 四、RDB的备份恢复: 五、RDB优缺点: 以下配置以Redis-x64-3.2.100.zip为例,介绍下 RDB快照持久化  一、

    2024年01月20日
    浏览(49)
  • redis数据安全(三)数据持久化 AOF

    接上一篇RDB,本篇看下Redis数据持久化的第二种方式AOF。 目录 一、AOF原理 1、写入机制: 2、缓冲机制: 3、重写机制 : 4、运行流程 二、AOF文件配置 1、开启AOF: 2、自动触发AOF重写  3、重写规则: 三、AOF的备份恢复: 1、正常恢复: 2、异常恢复: 四、重写流程: 五、

    2024年01月19日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包