docker 사용자 정의 설치 nginx

11828 단어 nginx
Dockerfile 만 들 기
우선, 디 렉 터 리 nginx 를 만 들 고 뒤의 관련 물건 을 저장 하 는 데 사용 합 니 다.
runoob@runoob:~$ mkdir -p ~/nginx/www ~/nginx/logs ~/nginx/conf

ww 디 렉 터 리 는 nginx 용기 에 설 치 된 가상 디 렉 터 리 에 매 핑 됩 니 다.
logs 디 렉 터 리 는 nginx 용기 의 로그 디 렉 터 리 로 매 핑 됩 니 다.
conf 디 렉 터 리 의 프로필 은 nginx 용기 의 프로필 로 매 핑 됩 니 다.
만 든 nginx 디 렉 터 리 에 들 어가 Dockerfile 만 들 기
FROM debian:jessie

MAINTAINER NGINX Docker Maintainers "[email protected]"

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(    )

좋은 웹페이지 즐겨찾기