使用docker構建supervisor全步驟


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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM