如何更新Heroku Nginx buildpack

时间:2018-06-07 17:39:28

标签: docker nginx heroku buildpack

我正在使用这个nginx Heroku buildpack。 https://github.com/kuwabarahiroshi/heroku-buildpack-nginx

一切正常,但现在我需要通过添加新模块来更新它,并且可能更新nginx版本。

我认为唯一要做的就是进入scripts / build_nginx文件并更新nginx版本并添加模块。之后,我推送到github并尝试再次将应用程序部署到Heroku。它没有帮助,我添加的任何内容都没有被使用,旧版本仍在构建中。

这是文件。我试图替换并添加它,然后将其推回给Github。

NGINX_VERSION = $ {NGINX_VERSION-1.14.0}

并添加此模块以配置

- with-stream_ssl_module \

- 添加模块= /选择/ nginx_custom_build / ngx_brotli

它不起作用。我看到有人提到运行Docker。我在Windows上,我有Docker,但不知道如何使用它。我如何更新这个Nginx buildpack,以便在将应用程序部署到Heroku时将其推送到repo并使用它?

NGINX_VERSION=${NGINX_VERSION-1.13.3}
PCRE_VERSION=${PCRE_VERSION-8.39}
HEADERS_MORE_VERSION=${HEADERS_MORE_VERSION-0.261}

nginx_tarball_url=http://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz
pcre_tarball_url=http://iweb.dl.sourceforge.net/project/pcre/pcre/${PCRE_VERSION}/pcre-${PCRE_VERSION}.tar.bz2
headers_more_nginx_module_url=https://github.com/openresty/headers-more-nginx-module/archive/v${HEADERS_MORE_VERSION}.tar.gz

temp_dir=$(mktemp -d /tmp/nginx.XXXXXXXXXX)

echo "Serving files from /tmp on $PORT"
cd /tmp
python -m SimpleHTTPServer $PORT &

cd $temp_dir
echo "Temp dir: $temp_dir"

echo "Downloading $nginx_tarball_url"
curl -L $nginx_tarball_url | tar xzv

echo "Downloading $pcre_tarball_url"
(cd nginx-${NGINX_VERSION} && curl -L $pcre_tarball_url | tar xvj )

echo "Downloading $headers_more_nginx_module_url"
(cd nginx-${NGINX_VERSION} && curl -L $headers_more_nginx_module_url | tar xvz )

(
    cd nginx-${NGINX_VERSION}
    ./configure \
        --with-pcre=pcre-${PCRE_VERSION} \
        --with-http_gzip_static_module \
        --with-http_v2_module \
        --with-poll_module \
        --with-http_realip_module \
        --with-http_sub_module \
        --prefix=/tmp/nginx \
        --add-module=/${temp_dir}/nginx-${NGINX_VERSION}/headers-more-nginx-module-${HEADERS_MORE_VERSION}
    make install
)

cp /tmp/nginx/sbin/nginx $1

0 个答案:

没有答案