Я хочу собрать alticelabs / nginx-log-zmq с openresty.
Мои команды выглядят в точности как инструкции :
./configure --add-module=../nginx-log-zmq-master
make
make install
Однако при запуске nginx с любой директивой zmq, например log_zmq_server
, nginx прерывается при запуске:
$ /usr/local/openresty/bin/openresty
> 2018/11/03 21:06:06 [emerg] 1#0: unknown directive "log_zmq_server" in /usr/local/openresty/nginx/conf/nginx.conf:13
Я уверен, что сама компиляция работает, потому что журналы показывают, что она была скомпилирована правильно, и раньше сообщалось об ошибке из-за отсутствующих зависимостей (libzmq3-dev):
adding module in /openresty-1.13.6.1/../nginx-log-zmq-master
checking for ZeroMQ library ... found
+ ngx_http_log_zmq_module was configured
[...]
Полный вывод журнала доступен на https://paste.ee/p/BCdf6.
Мой докер-файл:
FROM ubuntu:xenial
RUN apt-get -y update \
&& apt-get -y upgrade \
&& apt-get install -y \
libpcre3 \
libpcre3-dev \
libssl-dev \
libperl4-corelibs-perl \
libzmq3-dev \
g++ \
cmake \
unzip \
wget \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
RUN wget https://github.com/openresty/openresty/releases/download/v1.13.6.1/openresty-1.13.6.1.tar.gz \
&& wget https://github.com/alticelabs/nginx-log-zmq/archive/master.zip \
&& unzip master.zip \
&& rm master.zip \
&& tar -xvf openresty-1.13.6.1.tar.gz \
&& rm openresty-1.13.6.1.tar.gz \
&& cd openresty-1.13.6.1/ \
&& ./configure --add-module=../nginx-log-zmq-master -j2 \
&& make -j2 \
&& make install \
&& cd .. \
&& rm -r openresty-1.13.6.1 \
&& rm -r nginx-log-zmq-master
# connect stdout & stderr
RUN ln -sf /dev/stdout /usr/local/openresty/nginx/logs/access.log \
&& ln -sf /dev/stderr /usr/local/openresty/nginx/logs/error.log
COPY cmd.sh /usr/bin/cmd.sh
RUN chmod +x /usr/bin/cmd.sh
# copy configs
COPY *.conf /usr/local/openresty/nginx/conf/
COPY *.lua /usr/local/openresty/nginx/lua/
CMD ["/usr/local/openresty/bin/openresty", "-g", "daemon off;"]