目录结构
[root@localhost ~]# tree /haproxy_alpine/
/haproxy_alpine/
├── Dockerfile
└── files
├── haproxy-2.4.0.tar.gz
├── haproxycfg.sh
├── install.sh
└── sysctl.conf
1 directory, 5 files
拉取alpine镜像
[root@localhost ~]# docker pull alpine
Using default tag: latest
latest: Pulling from library/alpine
Digest: sha256:21a3deaa0d32a8057914f36584b5288d2e5ecc984380bc0118285c70fa8c9300
Status: Image is up to date for alpine:latest
docker.io/library/alpine:latest
[root@localhost ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
alpine latest c059bfaa849c 2 weeks ago 5.59MB
编写
Dockerfile
[root@localhost ~]# cat /haproxy_alpine/Dockerfile
FROM alpine
LABEL MAINTAINER "harry1004 2252628021@qqq.com"
ENV version 2.4.0
ADD files/haproxy-${version}.tar.gz /tmp/
ADD files/install.sh /tmp/
ADD files/haproxycfg.sh /tmp/
ADD files/sysctl.conf /tmp/
RUN /tmp/install.sh
ENTRYPOINT /tmp/haproxycfg.sh
haproxycfg.sh
[root@localhost ~]# cat /haproxy_alpine/files/haproxycfg.sh
#!/bin/sh
cat > /etc/haproxy/haproxy.cfg <<EOF
#---