Docker haproxy应用构建 (五)

编写dockerfile

from centos-base:v1
MAINTAINER 57674891@qq.com

RUN mkdir -p /data/{soft,src,logs,scripts,www}
RUN yum install systemd-devel  -y

ADD haproxy-1.8.17.tar.gz /data/src/
RUN cd /data/src/haproxy-1.8.17 && make ARCH=x86_64 TARGET=linux2628 USE_PCRE=1 USE_OPENSSL=1 USE_ZLIB=1 USE_SYSTEMD=1 USE_CPU_AFFINITY=1 PREFIX=/data/soft/haproxy 
     && make install PREFIX=/data/soft/haproxy && cp haproxy /usr/sbin/

ADD haproxy.cfg /etc/haproxy/haproxy.cfg
ADD run_haproxy.sh /usr/bin/run_haproxy.sh
RUN chmod 755 /usr/bin/run_haproxy.sh

EXPOSE 80 9800

CMD ["/usr/bin/run_haproxy.sh"]

创建build-command.sh

vim build-command.sh

#!/bin/bash
docker build -t centos-haproxy:v1.8.17 .

编写run文件:

1 )编写一个run_haproxy.sh文件
#!/bin/bash
haproxy  -W -f /etc/haproxy/haproxy.cfg
tail -f /etc/hosts

2 ) 给脚本赋权限:
chmod 755 run_haproxy.sh

运行过程:

1) sh build-commond.sh 
2) docker run -ti --rm -p 80:80 -p 9800:9800 centos-haproxy:v1.8.17  # 具体端口根据需要自行定义
3) docker exec -ti 容器ID bash    # 可以省略......

访问stat:

image

原文地址:https://www.cnblogs.com/zhenxing06/p/13398679.html