nginx 1.20 빌드하기
nginx build 방법
절차
- 필요한 package 설치
- 소스 다운로드
- 빌드
- make module : module 만 빌드할 때 사용하면 된다.
- make install : nginx 를 만들어준다.
Dockerfile
아래 docker 는 headers-more-nginx-module
(3rd party modules) 를 같이 빌드하는 내용이다. 빌드가 완료되면, /usr/local/nginx
에 nginx 가 저장된다.
module 은 /nginx-build/nginx-1.20.2/objs/ngx_http_headers_more_filter_module.so
에 생성된다.
nginx 는 /usr/local/nginx/
에 실행파일과 기타 파일들을 만든다.
/usr/local/nginx/
|
+- conf
+- html
+- logs
+- modules
+- sbin
FROM rockylinux:8
LABEL maintainer="coosal@duck.com"
# ----------------------------
# requirement
# ----------------------------
RUN dnf -y update
RUN dnf -y group install "Development Tools"
RUN dnf -y install bzip2
# RUN dnf -y install openssl
# ----------------------------
# 소스 download
# ----------------------------
RUN mkdir nginx-build
WORKDIR /nginx-build
# download nginx-1.20.2.tar.gz
RUN curl -L -o './nginx-1.20.2.tar.gz' http://nginx.org/download/nginx-1.20.2.tar.gz
RUN tar -xf ./nginx-1.20.2.tar.gz
RUN curl -L -o './headers-more-nginx-module-v0.33.tar.gz' https://github.com/openresty/headers-more-nginx-module/archive/refs/tags/v0.33.tar.gz
RUN tar -xf ./headers-more-nginx-module-v0.33.tar.gz
# download pcre-8.45
RUN curl -L -o './pcres-8.45.tar.bz2' https://sourceforge.net/projects/pcre/files/pcre/8.45/pcre-8.45.tar.bz2
RUN tar -xf ./pcres-8.45.tar.bz2
# download zlib-1.2.11
RUN curl -L -o './zlib-1.2.11.tar.gz' https://zlib.net/zlib-1.2.11.tar.gz
RUN tar -xf ./zlib-1.2.11.tar.gz
# ----------------------------
# build
# ----------------------------
WORKDIR /nginx-build/nginx-1.20.2
RUN ./configure --with-compat --add-dynamic-module=../headers-more-nginx-module-0.33 --with-pcre=../pcre-8.45 --with-zlib=../zlib-1.2.11
# ----------------------------
# module 을 build
# ----------------------------
RUN make modules
# ----------------------------
# nginx 를 build
# ----------------------------
RUN make install
ENTRYPOINT ['/bin/bash']
댓글 없음:
댓글 쓰기