美文网首页程序员程序园
教你如何一步一步使用docker构建supervisor服务

教你如何一步一步使用docker构建supervisor服务

作者: 果然朝辉 | 来源:发表于2019-05-03 11:24 被阅读3次

    1.使用docker build 命令基于Dockerfile文件进行构建supervisor镜像,命令:docker build -t supervisor镜像名 Dockerfile文件放置的位置
    Dockerfile文件如下:

    FROM centos
    MAINTAINER phonecom<18819470615@163.com>
    
    # supervisor配置文件路径
    ENV SUPERVISORD_CONF=/etc/supervisord.conf
    # supervisor临时文件路径(日志文件、sock文件、pid文件)
    ENV SUPERVISORD_TMP_CONF=/tmp/supervisor
    # supervisor程序块文件路径,即是[program]块
    ENV SUPERVISORD_INCLUDE_FILE=/etc/supervisordfile
    # web管理界面的IP
    ENV SUPERVISORD_WEB_IP=*
    # web管理界面的PORT
    ENV SUPERVISORD_WEB_PORT=9001
    # web管理界面的账号
    ENV SUPERVISORD_WEB_ACCOUNT=admin
    # web管理界面的密码
    ENV SUPERVISORD_WEB_PASSWORD=adminpass
    
    RUN mkdir -p ${SUPERVISORD_TMP_CONF}
    RUN mkdir -p ${SUPERVISORD_INCLUDE_FILE}
    
    RUN yum -y update
    RUN yum install -y python-setuptools wget telinit
    RUN wget --no-check-certificate https://bootstrap.pypa.io/ez_setup.py -O |python
    RUN easy_install supervisor
    RUN echo -e "[unix_http_server]\nfile=${SUPERVISORD_TMP_CONF}/supervisor.sock\n[inet_http_server]\nport=${SUPERVISORD_WEB_IP}:${SUPERVISORD_WEB_PORT}\nusername=${SUPERVISORD_WEB_ACCOUNT}\npassword=${SUPERVISORD_WEB_PASSWORD}\n[supervisord]\nlogfile=${SUPERVISORD_TMP_CONF}/supervisord.log\nlogfile_maxbytes=50MB\nlogfile_backups=10\nloglevel=info\npidfile=${SUPERVISORD_TMP_CONF}/supervisord.pid\nnodaemon=false\nminfds=1024\nminprocs=200\n[supervisorctl]\nserverurl=unix://${SUPERVISORD_TMP_CONF}/supervisor.sock\n[include]\nfiles = ${SUPERVISORD_INCLUDE_FILE}/*.ini" > ${SUPERVISORD_CONF}
    
    USER root
    EXPOSE 22 80 9001
    
    RUN /usr/sbin/init &
    RUN /usr/sbin/telinit &
    

    2.使用docker-compose.yml文件进行启动容器,命令:docker-compose up -d
    docker-compose.yml文件如下

    version: "2"
    services:
      supervisor:
        image: phonecom/supervisor # 这里是构建的镜像名
        ports:
          - "127.0.0.1:9001:9001"
        privileged: true
        command: 
          - /usr/bin/bash
          - -c 
          - |
            supervisord -c /etc/supervisord.conf
            while true;do sleep 100;done
    

    相关文章

      网友评论

        本文标题:教你如何一步一步使用docker构建supervisor服务

        本文链接:https://www.haomeiwen.com/subject/iymanqtx.html