docker安装redis最重要的就是存储持久化,安装步骤如下:
单机版:
#下载镜像
docker pull redis:3.2
#在宿主机中创建保存redis数据的文件夹,以后放aof的
mkdir data
#启动并制定持久文件夹
docker run -p 6379:6379 -v $PWD/data:/data --privileged=true -d redis:3.2 redis-server --appendonly yes
这样就起来了,就可以在工具或者redis-cli中查看了
保存了点数据,可以到data文件夹下看看有没有aof文件
[root@localhost data]# ll
总用量 4
-rw-r--r-- 1 polkitd ssh_keys 626 5月 9 16:34 appendonly.aof
看到持久化的文件了,持久化的规则,这里不赘述,现在要做的是关闭redis,后再次重启
[root@localhost data]# docker stop 87943b8c3a29
87943b8c3a29
[root@localhost data]# docker run -p 6379:6379 -v $PWD/data:/data --privileged=true -d redis:3.2 redis-server --appendonly yes
0799a521ba2fd64d8509a05b4929771c04908a67c3de5848acf5591a4dd65254
再次用RedisDesktopManager连接上redis看看
没有东西,怎么回事呢?看看aof还在吗?
[root@localhost data]# ll
总用量 4
-rw-r--r-- 1 polkitd ssh_keys 626 5月 9 16:34 appendonly.aof
drwxr-xr-x 2 polkitd root 28 5月 9 16:45 data
发现问题了,这里指定的是$PWD,导致的错误,以后注意,不过这个让我想起的hive自带的那个小数据库,就应该是用的$PWD
所以启动的位置要注意一下,如果使用的绝对路径就没有必要关注这个问题了
做一个脚本就不会出现这种问题了
#!/bin/sh
cd ~/dockertest
docker run -p 6379:6379 -v $PWD/data:/data -d redis:3.2 redis-server --appendonly yes
echo "=======redis start success==="