1、创建项目目录并下载包及文件

mkdir centos_redis
cd centos_redis
wget http://download.redis.io/releases/redis-5.0.5.tar.gz
wget http://mirrors.aliyun.com/repo/epel-7.repo
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo tar -zxf redis-5.0..tar.gz

2、编辑Dockerfile

FROM centos:latest

MAINTAINER xiaozhou (xiaozhou@docker.com)

LABEL Discription="基于centos的redis镜像" version="1.0"

RUN rm /etc/yum.repos.d/*
ADD redis-5.0.5 /data/usr/src/redis
ADD CentOS7-Base-163.repo /etc/yum.repos.d
ADD epel-7.repo /etc/yum.repos.d
RUN rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 \
&& yum provides '*/applydeltarpm' && yum install deltarpm -y \
&& yum install -y gcc gcc-c++ automake autoconf libtool make \
&& cd /data/usr/src/redis \
&& make PREFIX=/data/usr/redis install MALLOC=libc \
&& mkdir /data/usr/redis/{run,conf,logs,data} \
&& cp /data/usr/src/redis/redis.conf /data/usr/redis/conf/ \
&& sed -i "s/bind 127.0.0.1/bind 0.0.0.0/" /data/usr/redis/conf/redis.conf \
&& sed -i "s/daemonize no/daemonize yes/" /data/usr/redis/conf/redis.conf \
&& sed -i "s#pidfile /var/run/redis_6379.pid#pidfile /data/usr/redis/run/redis_6379.pid#" /data/usr/redis/conf/redis.conf \
&& sed -i 's#logfile ""#logfile "/data/usr/redis/logs/redis.log"#' /data/usr/redis/conf/redis.conf \
&& sed -i "s#dir ./#dir /data/usr/redis/data#" /data/usr/redis/conf/redis.conf \
&& sed -i "s/# requirepass foobared/requirepass Redis2019\!/" /data/usr/redis/conf/redis.conf ENV REDIS_HOME=/data/usr/redis
ENV PATH=$PATH:$REDIS_HOME/bin

3、构建镜像

docker build -t centos:redis .

4、启动容器

docker run --name redis -d -p : -it centos:redis

5、启动服务

进入容器

docker exec -it  container_id

redis-server /data/usr/redis/conf/redis.conf

docker Dockerfile学习---构建redis环境的更多相关文章

  1. docker Dockerfile学习---构建apache环境

    1.创建目录,上传包 创建项目目录 $ mkdir apache_php $ cd apache_php 把包下载后放到服务器该目录下 $ ls apr-....tar.gz 2.创建Dockerfi ...

  2. docker Dockerfile学习---构建mongodb环境

    1.创建项目目录并上传包 mkdir centos_mongodb cd centos_mongodb .tgz 2.编辑配置文件 vi mongodb.conf dbpath = /data/usr ...

  3. docker Dcokerfile学习---构建nginx环境

    1.创建项目目录并上传包 $ mkdir docker_nginx $ cd docker_nginx 下载nginx包 $ wget http://nginx.org/download/nginx- ...

  4. docker 灵活的构建 php 环境

    地址: https://github.com/ydtg1993/server           使用docker搭建灵活的线上php环境 有时候你可能不太需要一些别人已经集成了的包或者镜像      ...

  5. centos 7使用docker安装lnmp和redis环境

    #================Docker基础操作========================== #启动docker服务service docker start#搜索可用docker镜像#h ...

  6. 使用Docker 一键部署 LNMP+Redis 环境

    使用Docker 部署 LNMP+Redis 环境 Docker 简介 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linu ...

  7. Dockerfile分离构建LNMP环境部署wordpress

    最近忙着写自己的项目,也把一个站点的bbs论坛打算迁移到Docker中,测试没发现啥大问题.在单台上面的架构如下:(往后我们也是要讲到compose和swarm调度的慢慢来) 1.首先我们先安装一下d ...

  8. docker Dockerfile学习---nginx负载均衡tomcat服务

    1.此过程在nginx的基础上,也就是上篇博客写的内容. 2.创建项目目录并上传包,解压 $ mkdir centos_tomcat $ cd centos_tomcat $ tar zxvf jdk ...

  9. Docker容器学习梳理 - 基础环境安装

    以下是centos系统安装docker的操作记录 1)第一种方法:采用系统自带的docker安装,但是这一般都不是最新版的docker安装epel源[root@docker-server ~]# wg ...

随机推荐

  1. javascript中var同时声明多个变量时的原理是什么?

    <script> function show(){ var a=b=c=d=5; } show(); alert(a);//弹a时报错(not defined),而b.c.d都能弹出5 & ...

  2. 在MVC4.5.1中使用Ninject

    看完Pro ASP.NET MVC5的前14章之后,终于开始了自己的项目搭建. 打算在实际项目中使用Ninject 但是总是出现各种问题.这里记录一下 在书中使用的Ninject的版本是: Insta ...

  3. Dubbo面试常见问题

    一.dubbo是什么? dubbo是⼀个分布式服务框架,提供⾼性能和透明化的RPC远程服务调⽤⽅案,以及SOA服务治理方案.说白了其实dubbo就是一个远程调用的分布式框架. 二.dubbo的核心服务 ...

  4. 记录一下list转map

    Map<String,String> mapListStream = list.stream().collect(Collectors.toMap(key,value)):key对应key ...

  5. printf sscanf进阶

    printf ; printf (3d", a);//将打印 035 printf(“%-*s”, width, string): “*”: 在这里用width代替,其实和printf(“% ...

  6. 【LeetCode】String

    [227] Basic Calculator II [Medium] 实现一个简单的计算器,可以+,-,*,/. 用一个数组存数, 遇到+, - 就放进数组 : 遇到 *, / 就先计算好,再放进数组 ...

  7. PowerPoint for Mac 中的键盘快捷方式汇总

    PowerPoint for Mac 中的键盘快捷方式介绍给大家,使用PowerPoint for Mac可以创建新颖别致的演示文稿通过漂亮的设计.丰富的动画.电影动作.3D 模型和图标传达你的想法. ...

  8. cmake README.TXT

    { cmake .//在当前路径下构建项目 cmake --build .//在当前路径下生成项目(默认为debug)//cmake --build . --config release//在当前路径 ...

  9. java中EL表达式怎么获取网站的根目录

    ${pageContext.request.contextPath} <a href="${pageContext.request.contextPath}/login.jsp&quo ...

  10. NGINX配置之一:日志篇

    打开nginx.conf配置文件: vi /usr/local/nginx/conf/nginx.conf 日志部分内容: 日志生成的到Nginx根目录logs/access.log文件,默认使用“m ...