提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
早期的 Docker Redis 在容器中的配置文件,在一个专门的、特定的目录下,但现在没有了。
从 5.x 版本开始 Docker Redis 改变了思路:你可以将配置文件放在任意位置,然后在 Redis 启动时告诉 Redis 从哪里加载配置文件即可。
因此你想要配置容器内的 Redis,那么你需要在宿主机中准备好一个配置文件,然后映射到容器中的任意位置,然后将这个「任意位置」告诉容器中的 Redis 。麒麟V10系统上安装适合安装5.x版本以下的redis。
当然,如果你没有提供配置文件,它还是有默认的配置的,只不过你在容器中找不到配置文件。可能是以硬编码的方式写死在了 Redis 的代码中。
不过,Redis 的使用者已经习惯了配置文件在 /usr/local/etc/redis 下,叫 redis.conf ,所以,一般情况下也不会真的去随便乱放,乱起名。
docker run \
-v <宿主机上的redis.conf>:/usr/local/etc/redis/redis.conf \
redis:6.2.1 \
redis-server /usr/local/etc/redis/redis.conf
一、Docker在线安装redis
1. 下载安装包
链接:http://download.redis.io/releases/redis-5.0.5.tar.gz
获取到redis.conf文件
2. 坑:使用-v命令挂载时,主机会把redis.conf当做目录创建,所以先将文件创建好
mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf
开启redis持久化:
vi /mydata/redis/conf/redis.conf
bind 0.0.0.0
daemonize yes
protected-mode no
appendonly yes
3. 启动容器
docker run -p 6379:6379 --name redis --restart always \
-v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis:5.0.5 redis-server /etc/redis/redis.conf
参数说明:
redis-server /etc/redis/redis.conf:该容器redis-server使用/etc/redis/redis.conf配置文件启动
4. 终止容器
docker stop redis
docker rm redis
5. 连接redis
1. 进入容器内部连接:
docker exec -it redis /bin/bash
redis-cli -p 6379
2.使用客户端连接:
docker exec -it redis redis-cli
3.外部windows可视化客户端连接6379端口
二、麒麟V10离线编译和安装Redis步骤
编译和安装Redis步骤如下:
1.获取Redis源码
http://download.redis.io/releases/redis-4.0.9.tar.gz
2.执行如下命令,解压包
tar -zxvf redis-4.0.9.tar.gz
3.执行如下命令,进入deps目录
cd redis-4.0.9/deps
4.执行如下命令,编译Redis依赖库
make -j4 hiredis lua jemalloc linenoise
5.依次执行如下命令,编译Redis
cd ..
make -j4
make install
配置和运行Redis
1. 执行如下命令,配置redis为后台启动,将daemonize no 改成daemonize yes。
vim redis.conf
bind 0.0.0.0
daemonize yes
protected-mode no
appendonly yes
2.然后进入src 执行
./redis-server ../redis.conf
3.后台启动完成, 验证
ps -ef |grep redis
总结
以上就是docker安装redis和麒麟V10安装redis的步骤过程,下一篇讲解一下麒麟V10安装mongodb。