线上redis镜像构建与容器使用

2021年09月15日 阅读数:3
这篇文章主要向大家介绍线上redis镜像构建与容器使用,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。

1.dockerfile-redis构建镜像c++

FROM centos:latest
RUN yum install make wget curl unzip iproute net-tools gcc libgcc gcc-c++ glibc-devel -y &&\
yum clean all && \
rm -rf /var/cache/yum/*redis

RUN \
cd /tmp && \
wget http://download.redis.io/redis-stable.tar.gz && \
tar xvzf redis-stable.tar.gz && \
cd redis-stable && \
make && \
make install && \
mkdir -p /etc/redis && mkdir -p /var/log/redis && mkdir -p /var/run/redis && \
cp -f .conf /etc/redis && \
rm -rf /tmp/redis-stable
&&
ls -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
WORKDIR /etc/redis
CMD ["redis-server", "/etc/redis/redis.conf"]
EXPOSE 6379docker

2.在须要安装redis的服务器上拉取镜像centos

docker pull xx.xx.xx.xx/library/redis:v2服务器

3.建立redis的目录markdown

mkdir /opt/redisapp

持久化数据目录:mkdir -p /opt/redis/data curl

redis 配置文件:/opt/redis/redis.confide

redis.conf参考:redis.confui

daemonize yes
bind 0.0.0.0
#bind 10.10.10.161
port 6379
logfile "/var/log/redis/redis.log"
pidfile "/var/run/redis/redis.pid"
appendonly yes
appendfilename appendonly.aof
appendfsync everysec
timeout 300
save 900 1
save 300 10
save 60 10000
rdbcompression yes
dir "/data"
dbfilename dump.rdb

requirepass 123456

maxclients 128
#默认单位为微秒,即10ms
slowlog-log-slower-than 10000
#慢查询最大的条数,当slowlog超过设定的最大值后,会将最先的slowlog删除,是个FIFO队列
slowlog-max-len 128
latency-monitor-threshold 0
notify-keyspace-events ""
#若是Hash中字段的数量小于参数值,Redis将对该Key的Hash Value采用特殊编码。
hash-max-ziplist-entries 64
#若是Hash中各个字段的最大长度不超过512字节,Redis也将对该Key的Hash Value采用特殊编码方式。
hash-max-ziplist-value 512
#若是set中整型元素的数量不超过512时,Redis将会采用该特殊编码
set-max-intset-entries 512
list-max-ziplist-entries 64
list-max-ziplist-value 512
hll-sparse-max-bytes 3000
activerehashing yes
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit slave 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10
aof-rewrite-incremental-fsync yes

4.启动容器

参考命令:docker run -d --name redis02 -p 9997:6379 -v /opt/redis/redis.conf:/etc/redis/redis.conf -v /opt/redis/data/:/etc/redis/data/ xx.xx.xx.xx/library/redis:v2

redis配置参考:

https://blog.csdn.net/ljl890705/article/details/51540427