docker 自定义安装 nginx

创建Dockerfile

首先,创建目录nginx,用于存放后面的相关东西。

runoob@runoob:~$ mkdir -p ~/nginx/www ~/nginx/logs ~/nginx/conf

www目录将映射为nginx容器配置的虚拟目录

logs目录将映射为nginx容器的日志目录

conf目录里的配置文件将映射为nginx容器的配置文件

进入创建的nginx目录,创建Dockerfile

FROM debian:jessie

MAINTAINER NGINX Docker Maintainers "docker-maint@nginx.com"

ENV NGINX_VERSION 1.10.1-1~jessie

RUN apt-key adv --keyserver hkp://pgp.mit.edu:80 --recv-keys 573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62 \
        && echo "deb http://nginx.org/packages/debian/ jessie nginx" >> /etc/apt/sources.list \
        && apt-get update \
        && apt-get install --no-install-recommends --no-install-suggests -y \
                                                ca-certificates \
                                                nginx=${NGINX_VERSION} \
                                                nginx-module-xslt \
                                                nginx-module-geoip \
                                                nginx-module-image-filter \
                                                nginx-module-perl \
                                                nginx-module-njs \
                                                gettext-base \
        && rm -rf /var/lib/apt/lists/*

# forward request and error logs to docker log collector
RUN ln -sf /dev/stdout /var/log/nginx/access.log \
        && ln -sf /dev/stderr /var/log/nginx/error.log

EXPOSE 80 443

CMD ["nginx", "-g", "daemon off;"]

通过Dockerfile创建一个镜像,替换成你自己的名字

docker build -t nginx .

创建完成后,我们可以在本地的镜像列表里查找到刚刚创建的镜像

runoob@runoob:~/nginx$ docker images nginx
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

创建nginx.sh脚本

touch nginx.sh (创建文件)

vi nginx.sh (编辑文件)

在nginx.sh 中粘贴以下代码

#!/bin/sh


NAME=hy-nginx


case "$1" in 
	create)
		#port_map="-p $HTTP_PORT:80 -p $HTTPS_PORT:443"
		#volumn_map="-v $CURDIR/conf/nginx.conf:$IMGDIR/conf/nginx.conf \
		#	-v $CURDIR/conf/perm:$IMGDIR/conf/perm \
		#	-v $CURDIR/logs:$IMGDIR/logs \
		#	-v $CURDIR/lualib:/usr/local/openresty/nginx/lualib/ \
		#	-v /etc/localtime:/etc/localtime \
		#	-v /var/lib/openresty/resource/:$WWWDIR/resource/ \
		#	-v $CURDIR/www:$WWWDIR \
		#	-v /tmp/docker_share:/tmp/docker_share"
		#docker run -it -d --name $NAME $port_map $volumn_map --net host openresty/openresty:trusty
		docker run -it --name $NAME -v $PWD/www:$PWD/www -v $PWD/conf/nginx.conf:$PWD/conf/nginx.conf -v $PWD/logs:$PWD/wwwlogs  -d nginx:1.13.2
		;;


	delete)
		docker rm $NAME
		;;
	start)
		docker start $NAME
		;;		
	stop)
		docker stop $NAME
		;;
	restart)
		docker restart $NAME 
		;;
	status)
		docker ps -a | grep $NAME
		;;
	*)
		echo "Usage: $0 {start|stop|status|restart}"
		exit 1
	;;
esac
使用脚本启动镜像

./nginx.sh create(创建镜像)
./nginx.sh start(启动镜像)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值