docker封裝redis鏡像

一、概述

線上使用的redis版本爲 3.2.13,但是dockerhub沒有此版本的鏡像。只有3.2.12
但是默認的鏡像啓動時,是沒有redis.conf的,如果需要加配置,需要自己定義配置文件。

 

二、封裝鏡像

創建目錄

# dockerfile目錄
mkdir -p /opt/dockerfile/redis
# 持久化目錄
mkdir -p /data/redis

 

/opt/dockerfile/redis目錄結構如下:

./
├── dockerfile
├── redis.conf
└── run.sh

 

dockerfile

FROM redis:3.2.12
COPY redis.conf /usr/local/etc/redis/redis.conf
CMD [ "redis-server", "/usr/local/etc/redis/redis.conf"]

 

redis.conf

dir /data
pidfile /data/redis.pid
logfile "/data/redis.log"
repl-disable-tcp-nodelay yes
no-appendfsync-on-rewrite yes
maxmemory 2048m
maxmemory-policy allkeys-lru
requirepass 123456

注意:調整maxmemory參數。我這裏的服務器內存是4g,所以調整爲2g

 

run.sh

#!/bin/bash
docker run -d -it --name redis_prod --restart=always -p 6379:6379 -v /data/redis:/data redis_prod:3.2.12

 

生成鏡像

cd /opt/dockerfile/redis
docker build -t redis_prod:3.2.12 .

 

啓動鏡像

bash run.sh

 

三、測試

# docker exec -it redis_prod /bin/bash
# redis-cli
127.0.0.1:6379> auth 123456
OK
127.0.0.1:6379> info
# Server
redis_version:3.2.12
...

 

 

發佈了287 篇原創文章 · 獲贊 10 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章