博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Docker使用supervisor构建memcached
阅读量:7091 次
发布时间:2019-06-28

本文共 2580 字,大约阅读时间需要 8 分钟。

hot3.png

1.使用Dockerfile文件直接构建

Dockerfile

FROM centos:centos6MAINTAINER  aaron "aaron.docker@gmail.com"#Install supervisorRUN rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpmRUN yum -y update  && yum -y install python-pip && /usr/bin/pip install supervisorRUN mkdir -p /etc/supervisor/conf.d && mkdir -p /var/log/supervisorCOPY supervisord.conf /etc/supervisord.confVOLUME /var/log/supervisor#install sshd RUN yum install -y openssh-server && sed -i 's/UsePAM yes/UsePAM no/g' /etc/ssh/sshd_config# select root paswordRUN echo "root:pasword" | chpasswd && echo "root   ALL=(ALL)       ALL" >> /etc/sudoersRUN ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key && ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_keyRUN mkdir /var/run/sshd#Install libeventRUN yum -y install wget && yum -y install tar && yum -y install gcc && yum -y install perl-Test-HarnessRUN wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz &&\        tar xzf libevent-2.0.21-stable.tar.gz &&\        cd libevent-2.0.21-stable &&\        ./configure --prefix=/usr &&\        make && make install#Install memcached RUN wget http://memcached.org/latest && mv latest memcached-1.4.21.tar.gz && \        tar xzf memcached-1.4.21.tar.gz &&\        cd memcached-1.4.21 &&\        ./configure --prefix=/usr/local/memcache --with-libevent=/usr &&\        make && make installEXPOSE 22 11211CMD ["/usr/bin/supervisord"]

构建

新建build.conf、build.sh

build.conf

DOCKER_USER=aarongoDOCKER_IMAGE_NAME=centos-memcache-supervisorDOCKER_IMAGE_TAG=latestDOCKER_IMAGE_REPOSITORY_NAME=${DOCKER_USER}/${DOCKER_IMAGE_NAME}:${DOCKER_IMAGE_TAG}

build.sh

#!/usr/bin/env bash# Change working directoryDIR_PATH="$( cd "$( echo "${0%/*}" )"; pwd )"if [[ $DIR_PATH == */* ]]; then        cd $DIR_PATHfiNO_CACHE="$1"source build.confshow_docker_image (){        NAME=$1        NAME_PARTS=(${NAME//:/ })        # Set 'latest' tag if no tag requested        if [ ${#NAME_PART[@]} == 1 ]; then                NAME_PARTS[1]='latest'        fi        docker images | grep -e "^${NAME_PARTS[0]}[ ]\{1,\}${NAME_PARTS[1]}"}echo Building ${DOCKER_IMAGE_REPOSITORY_NAME}...# Allow cache to be bypassedif [ "$NO_CACHE" == "true" ]; then        echo " ---> Skipping cache"else        NO_CACHE="false"fi# Build from working directorydocker build --no-cache=$NO_CACHE -t ${DOCKER_IMAGE_REPOSITORY_NAME} .# Display the last docker imageecho "Docker image:"show_docker_image ${DOCKER_IMAGE_REPOSITORY_NAME}echo " ---> Build complete"

配置好buid.conf后直接运行build.sh 可直接完成

转载于:https://my.oschina.net/aarongo/blog/349465

你可能感兴趣的文章
png24是支持Alpha透明的。。。。。。
查看>>
关于WebGIS开源解决方案的探讨(转)
查看>>
OO第三次博客作业
查看>>
Linux--sed命令
查看>>
Java基本语法-----java数据类型的转换
查看>>
MM模块表大全简单介绍
查看>>
Recursive
查看>>
android sqlite 图片保存和读出
查看>>
Android开机自启动程序
查看>>
C++ PAT乙 1080. MOOC期终成绩 (25)
查看>>
关于layoutparam 请铭记。。。。
查看>>
DevExpress_Report 主从报表绑定数据,分页打印
查看>>
小强的HTML5移动开发之路(3)——HTML5与HTML4比较
查看>>
使用unity3D开发同时打开手机前后摄像头实例程序
查看>>
装饰器
查看>>
转: C# 根据当前时间获取,本周,本月,本季度等时间段 .Net中Exception
查看>>
Java语言基础相关问题
查看>>
spring boot集成swagger2
查看>>
写代码的三重境界
查看>>
hibernate中懒加载和急加载的区别,以及hibernate中get()方法和load()方法的区别
查看>>