docker Dockerfile 构建redis
自己构建的redis不划算,因为官方拉取的才100+M,自己构建要500+M
1、创建一个redis目录
#mkdir redis
2、进入redis
#cd redis
3、将安装包上传到redis下并解压
#tar -zxvf redis-3.2.7.tar.gz
4、创建Dockerfile文件,并编辑
#vi Dockerfile
将以下信息添加到Dockerfile中
【
#FROM 基础镜像,一切从这里开始构建,因为要装依赖,所以使用centos7
FROM centos:7
# maintainer:镜像是谁写的, 姓名+邮箱
MAINTAINER llx (907164701@qq.com)
#label:标签
LABEL Discription="基于centos的redis镜像" version="1.0"
#添加文件到容器
ADD redis-3.2.7 /usr/local/redis-3.2.7
#安装依赖 && 编译 && 安装 && 创建目录 && 移动文件至目录
RUN yum install -y install make gcc libgcc gcc-c++ glibc-devel make && cd /usr/local/redis-3.2.7/ && make && cd /usr/local/redis-3.2.7/src/ && make install && cd /usr/local/redis-3.2.7/ && mkdir -p /usr/local/redis-3.2.7/bin && mkdir -p /usr/local/redis-3.2.7/etc && mv /usr/local/redis-3.2.7/redis.conf /usr/local/redis-3.2.7/etc/ && mv /usr/local/redis-3.2.7/src/* /usr/local/redis-3.2.7/bin/
#修改配置文件
#踩坑记录,修改文件导致镜像构建看着是成功了,其实容器启动失败
#建议在构建镜像钱,在redis-3.2.7 目录下的redis.conf修改好,在执行构建
#RUN sed -i "s/daemonize no/daemonize yes/" /usr/local/redis-3.2.7/etc/redis.conf
#设置端口
EXPOSE 6379
#启动容器时,顺便启动redis服务
CMD ["/usr/local/redis-3.2.7/bin/redis-server","/usr/local/redis-3.2.7/etc/redis.conf"]
】
5、修改配置文件redis.conf
#vi redis.conf
daemonize no改成daemonize yes
6、创建镜像
#docker build -t my_redis:v3 .
注意:构建成功是有两个Successfully提示的
7、启动容器
#docker run --name my_redis3 -d my_redis:v3