一 创建Dockerfile

[root@zxmrlc docker]# mkdir redis
[root@zxmrlc docker]# cd redis && touch Dockerfile
 #version: 2019-1-28
FROM centos:7.5.1804
MAINTAINER zxMrlc
#前置GCC编译环境
RUN ["yum","-y","update"]
RUN ["yum","-y","install","gcc"]
# 应该采用类似数组的方式进行传递命令 非数组形式 会在命令前 /bin/sh -c 运行,会出现很多问题。因为sh简化版,跑脚本会出现很多莫名其妙的error ,因为是测试 就先简化写了。 # 玄学前置 ubuntu 不需要 centos 需要
RUN yum install -y epel-release
#redis 安装 固定版本5.0.0 为例子
RUN yum install -y gcc
RUN yum install -y wget
RUN yum clean all
RUN wget download.redis.io/releases/redis-5.0.0.tar.gz
#也可以先下载在宿主机上然后ADD ADD的时候会自动解压
#挂载后进行解压也是可以的
RUN tar -zxvf redis-5.0.0.tar.gz -C /usr/local/ && rm -f redis-5.0.0.tar.gz
RUN yum install -y make
RUN cd /usr/local/redis-5.0.0/ && make MALLOC=libc
##########修改配置开启远程连接,关闭保护模式##########
##########不应该开启后台进程运行模式,用后台启动会导致容器退出##########
RUN sed -i -e 's@bind 127.0.0.1@bind 0.0.0.0@g' /usr/local/redis-5.0.0/redis.conf \
&& sed -i -e 's@protected-mode yes@protected-mode no@g' /usr/local/redis-5.0.0/redis.conf
#&& sed -i -e 's@daemonize no@daemonize yes@g' /usr/local/redis-5.0.0/redis.conf
##########设置密码##########
#RUN echo "requirepass test" >> /usr/local/redis-5.0.0/redis.conf
EXPOSE 6379 ENTRYPOINT /usr/local/redis-5.0.0/src/redis-server /usr/local/redis-5.0.0/redis.conf
#CMD []

25行的配置一定不要打开,虽然平常在本机运行时都是通过后台运行。但是在容器中单独运行后台程序,终端没有内容会直接结束容器。

二 构建镜像

[root@zxmrlc redis]# docker build -t redis:v2019.1.28. $PWD

简单的话写.更好。怕看不清更换成$PWD

三  运行容器

指定端口映射,前面已经设定6379自动映射,这里直接给定端口范围 即可 ,restart 应该设置为always

[root@zxmrlc redis]# docker run -d --name=redis -p6379: redis:v2019.1.28.

还是映射到主机上的6379了 查看一下

[root@zxmrlc redis]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d072626e4b32 redis:v2019.1.28. "/bin/sh -c '/usr/..." minutes ago Up seconds 0.0.0.0:->/tcp redis

端口列0.0.0.0:6379->6379/tcp 是ok的 如果只有6379/tcp就是失败的

四  监控redis

由于版本5.0.0比较新,所以下载教新的RedisDestopManager  放个链接 官网下载要订阅,github有源码编译很麻烦。。

链接:https://pan.baidu.com/s/13mk2UuC_zIz75T9UWunvkA
提取码:7xoq

五 持久化

持久化的解决方案就很简单了 在配置文件里修改开启持久化,并且将目录挂载在宿主机即可

基于Dockerfile 构建redis5.0.0(包括持久化)及RedisDestopManager 监控的更多相关文章

  1. docker 基于Dockerfile构建redis

    创建Dockerfile 文件 新建目录 mkdir /var/docker/redis -pcd /var/docker/redis 新建 Dockerfile FROM centos:7.5.18 ...

  2. 基于PHP构建OAuth 2.0 服务端 认证平台

    OAuth2.0 认证服务 安装 你可以在github上下载OAuth Server PHP,也可以用下列命令下载,不过内容都是一样的 mkdir my-oauth2-walkthrough cd m ...

  3. 利用Dockerfile构建一个基于centos 7,包括java 8, tomcat 7,php ,mysql+mycat的镜像

    Dockerfile内容如下: FROM centos MAINTAINER Victor ivictor@foxmail.com WORKDIR /root RUN rm -f /etc/yum.r ...

  4. 基于.NetCore的Redis5.0.3(最新版)快速入门、源码解析、集群搭建与SDK使用【原创】

    1.[基础]redis能带给我们什么福利 Redis(Remote Dictionary Server)官网:https://redis.io/ Redis命令:https://redis.io/co ...

  5. 基于@vue/cli 的构建项目(3.0)

    1.检测node的版本号 注意:1.Vue CLI需要Node.js的版本 8.9+(推荐8.11.0+) 所以在安装Vue CLI之前先看下node的版本 node -v 2.安装@vue/cli ...

  6. 利用Dockerfile构建一个基于CentOS 7镜像

    利用Dockerfile构建一个基于CentOS 7,包括java 8, tomcat 7,php ,mysql+mycat的镜像. Dockerfile内容如下: FROM centosMAINTA ...

  7. redis5.0.0功能介绍以及主从集群、哨兵搭建

    这两天突然想起redis,索性就再尝试一下搭建最新版本的redis,过程有点艰辛呀,记录一下,供自己和大家今后搭建做参考. 一.为什么用Redis? 我自己总结了一下: 1.基于内存实现的key-va ...

  8. 基于Java图片数据库Neo4j 3.0.0发布 全新的内部架构

    基于Java图片数据库Neo4j 3.0.0发布 全新的内部架构 Neo4j 3.0.0 正式发布,这是 Neo4j 3.0 系列的第一个版本.此版本对内部架构进行了全新的设计;提供给开发者更强大的生 ...

  9. PoiDemo【Android将表单数据生成Word文档的方案之二(基于Poi4.0.0)】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 使用Poi实现android中根据模板文件生成Word文档的功能.这里的模板文件是doc文件.如果模板文件是docx文件的话,请阅读 ...

随机推荐

  1. java笔试面试题准备

    J2SE基础 九种基本数据类型的大小,以及它们的封装类 byte 8 Byte char 16 Character short 16 Short int 32 Integer long 64 Long ...

  2. Dynamic Rankings(树状数组套权值线段树)

    Dynamic Rankings(树状数组套权值线段树) 给定一个含有n个数的序列a[1],a[2],a[3]--a[n],程序必须回答这样的询问:对于给定的i,j,k,在a[i],a[i+1],a[ ...

  3. bzoj2229: [Zjoi2011]最小割(最小割树)

    传送门 这题是用最小割树做的(不明白最小割树是什么的可以去看看这一题->这里) 有了最小割树就很简单了……点数那么少……每次跑出一个最大流就暴力搞一遍就好了 //minamoto #includ ...

  4. DNS 网关 路由 交换机 网桥 协议 服务器 这些都是什么关系?

    来源:知乎 服务器:为你提供服务的机器.相当于马路边上的各种店面.虽然理论上任何一户人家都能开店为你提供服务,但是因为各种硬件资源限制而不适合开店.比如:小区道路比较窄(宽带带宽比较窄).家里地方太小 ...

  5. PAT天梯赛L2-008 最长对称字符串

    题目链接:点击打开链接 对给定的字符串,本题要求你输出最长对称子串的长度.例如,给定"Is PAT&TAP symmetric?",最长对称子串为"s PAT&a ...

  6. C A Simple Job

    题目3 : A Simple Job时间限制:1000ms单点时限:1000ms内存限制:256MB描述Institute of Computational Linguistics (ICL), Pe ...

  7. python3+Appium自动化02-Capability配置

    基本参数 参数 描述 实例 automationName 自动化测试引擎 Appium或 Selendroid platformName 手机操作系统 iOS, Android, 或 FirefoxO ...

  8. CountDownLatch与CyclicBarrier的使用与区别

    CountDownLatch的介绍和使用: 一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待. 用给定的计数 初始化 CountDownLatch.由于调用了 co ...

  9. Hive 基本语法操练(三):分区操作和桶操作

    (一)分区操作 Hive 的分区通过在创建表时启动 PARTITION BY 实现,用来分区的维度并不是实际数据的某一列,具体分区的标志是由插入内容时给定的.当要查询某一分区的内容时可以采用 WHER ...

  10. mysql 位操作支持

    mysql 支持位操作. & 位与 | 位或 例如:update car_ins_fee_entity set change_status=(change_status | 1) where ...