整体结构如下图

 

先来在 172.16.0.200 安装docker-ce (新)或 docker-io(旧)     

0: Docker-ce  (新版本  Docker version 17.09.0-ce)

1. 卸载老版本的 docker 及其相关依赖
sudo yum remove docker docker-common container-selinux docker-selinux docker-engine

​ 2. 安装 yum-utils,它提供了 yum-config-manager,可用来管理yum源
sudo yum install -y yum-utils

​ 3. 添加yum源
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

​ 4. 更新索引
sudo yum makecache fast

​ 5. 安装 docker-ce
sudo yum install docker-ce

​ 6. 启动 docker
sudo systemctl start docker

​ 7. 验证是否安装成功
sudo docker info

1:搜索是否有可用得docker   rpm 包  (老版本  Docker:1.12)

yum list | grep docker-io

2:安装epel-release 和  docker-io 

yum install  epel-release -y && yum makecache &&yum install docker-io -y

3:启动docker 

systemctl start docker       

#查看一下docker 是否启动

4:搜索可用镜像

docker search centos

5:docker 可配置国内加速

通过配置文件启动Docker

Docker 版本在 1.12 或更高

修改 /etc/docker/daemon.json 文件并添加上 registry-mirrors 键值。

vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}

Docker版本在 1.8 与 1.11 之间

您可以找到 Docker 配置文件,在配置文件中的 DOCKER_OPTS 加入。不同的 Linux 发行版的配置路径不同,这里以 Ubuntu 为例。

a) Ubuntu 14.04版本

修改 /etc/default/docker 文件,加入如下参数。

 
vim /etc/default/docker
DOCKER_OPTS="--registry-mirror=https://registry.docker-cn.com"

6:  pull   一个官方基础镜像下来   我们拿docker.io/centos  来做基础镜像

docker pull docker.io/centos

docker images 

接下来这个脚本做了什么?

         1  在本地下载一下redis.tar.gz包  解压编译

         2  修改redis.conf 配置文件  , 在/home目录下创建redis-dockerfile 目录 将redis编译完成二进制包  移过来  等一下copy进制作得镜像当中

         3  创建  build 所需Dockerfile  方件

         4   build  一个 redis-Images  并挂载log 进容器当中启动   

代码出下    new_redis_images.sh

#!/bin/bash
#author Mrchen 237356573@qq.com yum install wget gcc make -y
cd /mnt
wget http://download.redis.io/releases/redis-3.2.8.tar.gz
tar -xzvf redis-3.2.8.tar.gz && rm -rf redis-3.2.8.tar.gz
cd redis-3.2.8
make && make install
mkdir -p /home/redis-DockerFiel
mv /mnt/redis-3.2.8 /home/redis-DockerFiel/redis #-----------------------set_redis.conf------------------------------- cd /home/redis-DockerFiel
if [[ -e ./redis/redis.conf ]]; then
cat > ./redis/redis.conf <<\EOF
daemonize no
port 6379
logfile "/var/log/redis.log"
appendonly yes
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
EOF fi #本地创建redis.log 等一下挂载进容器
touch /data/redis/redis.log #-------------------new_redis__Dockerfile.......................... if [[ ! -e /home/redis-DockerFiel/Dockerfile ]]; then
cat > /home/redis-DockerFiel/Dockerfile <<\EOF
############################################
# version : python-django/redis:v1
# desc : 当前版本安装的redis
############################################
#指定基础镜像:docker.io/centos
FROM docker.io/centos MAINTAINER The CentOS Project <237356573.qq.com> #copy redis应用程序目录到容器中
COPY ./redis /usr/local/redis #创建redis log 日记
RUN touch /var/log/redis.log #开放6379端口
EXPOSE 6379 #启动Redis
ENTRYPOINT ["/usr/local/redis/src/redis-server" , "/usr/local/redis/redis.conf"] EOF fi #-------------------------start docker "build" redis Images---------------------
cd /home/redis-DockerFiel && docker build -t python_django/redis:1.0 .
#-------------------------start docker "run" redis Images......................
docker run --name redis --privileged=true -v /data/redis/redis.log:/var/log/redis.log -p 6379:6379 -d python_django/redis:1.0

7:  准备运行脚本

 bash   new_redis_images.sh   #却保无 docker  images  name--->>>     python_django/redis:1.0  存在 仓库在也不行

docker stop name---python_django/redis:1.0

docker  rmi -f  name---python_django/redis:1.0

运行脚本

bash   new_redis_images.sh

连接测试:

 

#最后说明一点 就是 脚本中得  python_django/redis:1.0     可以用变量 代替  不这样该脚本只能运行一次  第二次就会产生build   时候 name 重名 error 

--privileged=true 参数特别说明  网上找得:

Docker 搭建开源 CMDB平台 “OpsManage” 之 Redis的更多相关文章

  1. Docker 搭建开源 CMDB平台 “OpsManage” 之 Mariadb

    整理了一下文档  今天来构建mariadb 主机还是 centos  172.16.0.200 构建第二个images   直接shell.sh 完成  #!/bin/bash echo " ...

  2. Docker 搭建开源 CMDB平台 之 “OpsManage”

    说明:  我一次build 完 所以images 包 有1G多   可分层build   bash 环境一层   应用程序及启动脚本(shell.sh) 一层 步骤:           1     ...

  3. 【译文】用Spring Cloud和Docker搭建微服务平台

    by Kenny Bastani Sunday, July 12, 2015 转自:http://www.kennybastani.com/2015/07/spring-cloud-docker-mi ...

  4. Spring Cloud和Docker搭建微服务平台

    用Spring Cloud和Docker搭建微服务平台 This blog series will introduce you to some of the foundational concepts ...

  5. 基于docker搭建开源扫描器——伏羲

    基于docker搭建开源扫描器——伏羲 1.简介 项目地址 伏羲是一款开源的安全检测工具,适用于中小型企业对企业内部进行安全检测和资产统计. 功能一览: 基于插件的漏洞扫描功能(类似于巡风) 漏洞管理 ...

  6. Docker搭建代码检测平台SonarQube并检测maven项目

    1 前言 良好的代码习惯是一个优秀程序员应该具备的品质,但靠人的习惯与记忆来保证代码质量,始终不是一件靠谱的事.在计算机行业应该深知,只要是人为的,都会有操作风险.本文讲解如何通过Docker搭建代码 ...

  7. docker 搭建php 开发环境 添加扩展redis、swoole、xdebug

    docker-compose搭建lnmp 先决条件 首先需要安装docker 安装docker-compost 1.创建lnmp工作目录 #创建三个目录 mkdir lnmp && c ...

  8. 企业安全建设之搭建开源SIEM平台

    https://www.freebuf.com/special/127172.html https://www.freebuf.com/special/127264.html https://www. ...

  9. 企业安全建设之搭建开源SIEM平台(上)

    前言 SIEM(security information and event management),顾名思义就是针对安全信息和事件的管理系统,针对大多数企业是不便宜的安全系统,本文结合作者的经验介绍 ...

随机推荐

  1. 以java实现的一个简单登录界面(带验证码)

    本文参考于:https://blog.csdn.net/wyf2017/article/details/78831744 https://blog.csdn.net/MengKun822/articl ...

  2. 第2节 storm实时看板案例:12、实时看板综合案例代码完善;13、今日课程总结

    详见代码 将任务提交到集群上面去运行 apache-storm-1.1.1/bin/storm jar cn.itcast.storm.kafkaAndStorm.KafkTopology kafka ...

  3. 关于Java构造类与对象的思考

    简单记录一下Java构造类与对象时的流程以及this和super对于特殊例子的分析. 首先,接着昨天的问题,我做出了几个变形: Pic1.原版: Pic2.去掉了T.foo方法中的this关键字: P ...

  4. vb.net FTP上传下载,目录操作

    https://blog.csdn.net/dzweather/article/details/51429107 FtpWebRequest与FtpWebResponse类用来与特定FTP服务器进行沟 ...

  5. python列表元组 魔法方法

    1.元祖 count()    统计某个字符串的出现次数 tuple.count('22')    返回一个整数 index()    获取某个值出现的位置 2.列表 字符串可以直接转换列表    l ...

  6. 本地连接 HDFS 报错 Exception in thread "main" org.apache.hadoop.security.AccessControlException: org.apache.hadoop.security.AccessControlException: Permission denied: user=JM.H,access=WRITE, inode="":r

    此时 到hdfs机器下修改hdfs-site.xml即可 添加如下配置 <property> <name>dfs.permissions</name> <va ...

  7. css的手机适配

    在html篇里提到设置视口宽度和设备宽度,固定的meta配置就是写死的,==死记硬背== 应该清楚的是手机端的适配应该克服的难题就是宽度根据手机屏幕的大小变化,而高度却没有办法跟随比例变化,也就是宽高 ...

  8. mysql 模糊查询中包含特殊字符查询

  9. XE10开发的APP对于苹果IPV6上架要求的处理

    1.服务器必须使用域名.不能使用IP地址2.Indy的话,域名加[]3.DataSnap的话,Params.Values['CommunicationIPVersion'] :='IP_IPv6';4 ...

  10. 吴裕雄--天生自然java开发常用类库学习笔记:排序及重复元素说明

    import java.util.Set ; import java.util.HashSet ; class Person{ private String name ; private int ag ...