1、编辑dockerfile
vim Dockerfile
FROM nginx:1.14-alpine
LABEL maintainer= "MageEdu <mage@magedu.com>"
ENV NGX_DOC_ROOT= '/data/web/html'
ADD index.html ${NGX_DOC_ROOT}
ADD entrypoint.sh /bin/
EXPOSE 80/tcp
HEALTHCHECK --start-period=5s --interval=5m --timeout=3s CMD wget -o -q http://${IP:-0.0.0.0}:${PORT:-80}/|| exit 1
CMD ["/usr/sbin/nginx","-g","daemon off;"]
ENTRYPOINT ["/bin/entrypoint.sh"]
2、编辑entrypoint.sh
vim entrypoint.sh
#!/bin/sh
cat >/etc/nginx/conf.d/www.conf <<EOF
server {
server_name $HOSTNAME;
listen ${IP:-0.0.0.0}:${PORT-80};
ROOT ${NGX_DOC_ROOT:-/usr/share/nginx/html};
}
EOF
exec "$@"
3、生成镜像:
docker build -t myweb:v0.3-5 ./
4、运行容器:
docker rum --name myweb1 --rm -P myweb:v0.3-5
5、进入容器:
docker exec -it myweb1 /bin/sh
cat /etc/nginx/conf.d/www.conf
netstat -tnl
wget -0 - -q $hostname( <h1>New Doc Root for Nginx <h1>
6、测试变量
docker run --name myweb1 --rm -P -e "PORT=8080" myweb:v0.3-5
docker exec -it mweb1 /bin/sh
netstat -ntl (监听为8080端口)
7、健康检查(127.0.0.1 - - [date ] "GET" / HTTP/1.1 200 32 "WGET ")