1. 程式人生 > 實用技巧 >Docker haproxy應用構建 (五)

Docker haproxy應用構建 (五)

編寫dockerfile

from centos-base:v1
MAINTAINER [email protected]

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: