Dockerfile构建haproxy镜像

本文介绍了如何通过Dockerfile来构建haproxy镜像,详细步骤包括编写Dockerfile、执行安装脚本、构建镜像、启动haproxy容器,以及设置测试页面容器和ENV变量,最后展示了访问效果和启动脚本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

构建haproxy镜像

[root@localhost docker]# tree haproxy/
haproxy/
├── conf
│   └── RSS
├── Dockerfile
└── files
    ├── haproxy-2.4.9.tar.gz
    ├── haproxy.cfg
    ├── install.sh
    ├── rsyslog.conf
    ├── start.sh
    └── sysctl.conf

编写dockerfile

[root@localhost docker]# vim haproxy/Dockerfile
FROM centos
  
LABEL MAINTAINER='neawalke 123456789@qq.com'

ENV version 2.4.9
ENV web1_ip ""

ADD files/haproxy-${version}.tar.gz /usr/src/
ADD files/haproxy.cfg /etc/haproxy/
ADD files/entrypoint.sh /
ADD files/sysctl.conf /etc/
ADD files/install.sh /tmp/


RUN ["/bin/bash","-c","/tmp/install.sh"]


EXPOSE 80 8189
CMD ["/entrypoint.sh"]

提供执行安装脚本

[root@localhost docker]# vim haproxy/files/install.sh 
#!/bin/bash
  
rm -rf /etc/yum.repos.d/* && \
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-$(awk -F '"' 'NR==5{print $2}' /etc/os-release ).repo && \
sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo && \
yum clean all && yum list all && \
yum -y install make gcc pcre-devel bzip2-devel openssl-devel systemd-devel && \
useradd -r -M -s /sbin/nologin haproxy && \

cd /usr/src/haproxy-${version} && make clean && \
make -j $(nproc) TARGET=linux-glibc USE_OPENSSL=1 USE_PCRE=1 USE_SYSTEMD=1 && \
make install PREFIX=/usr/local/haproxy && \

yum -y remove make gcc gcc-c++ && \
rm -rf /usr/src/{
   
   haproxy-${version}.tar.gz, haproxy-${version}}


[root@localhost docker]# chmod +x haproxy/files/install.sh


#启动容器脚本
[root@localhost docker]# vim haproxy/files/start.sh 

#!/bin/bash
  

IFS=$'\n'
OLDIFS=
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值