From ea34df2cda7cb4c91908678e98649951560819cb Mon Sep 17 00:00:00 2001 From: Mateusz Karkula Date: Tue, 28 Apr 2020 09:03:45 +0200 Subject: [PATCH] Update to python3 and elastalert v0.2.4 --- Dockerfile | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/Dockerfile b/Dockerfile index 056ff5af..aa0744ab 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ -FROM alpine:latest as py-ea -ARG ELASTALERT_VERSION=v0.2.0b2 +FROM alpine:3.11 as py-ea +ARG ELASTALERT_VERSION=v0.2.4 ENV ELASTALERT_VERSION=${ELASTALERT_VERSION} # URL from which to download Elastalert. ARG ELASTALERT_URL=https://github.com/Yelp/elastalert/archive/$ELASTALERT_VERSION.zip @@ -9,7 +9,7 @@ ENV ELASTALERT_HOME /opt/elastalert WORKDIR /opt -RUN apk add --update --no-cache ca-certificates openssl-dev openssl python2-dev python2 py2-pip py2-yaml libffi-dev gcc musl-dev wget && \ +RUN apk add --update --no-cache ca-certificates openssl-dev openssl python3-dev python3 py3-pip py3-yaml libffi-dev gcc musl-dev wget && \ # Download and unpack Elastalert. wget -O elastalert.zip "${ELASTALERT_URL}" && \ unzip elastalert.zip && \ @@ -18,20 +18,21 @@ RUN apk add --update --no-cache ca-certificates openssl-dev openssl python2-dev WORKDIR "${ELASTALERT_HOME}" +# stick to the last 2.* version (problem with Rust dependency: https://github.com/pyca/cryptography/issues/5771) +RUN sed -i "s/install_requires=\[/install_requires=\[\n 'cryptography<3.0'/" setup.py + # Install Elastalert. -# see: https://github.com/Yelp/elastalert/issues/1654 -RUN sed -i 's/jira>=1.0.10/jira>=1.0.10,<1.0.15/g' setup.py && \ - python setup.py install && \ - pip install -r requirements.txt +RUN python3 setup.py install -FROM node:alpine +FROM node:14-alpine LABEL maintainer="BitSensor " # Set timezone for this container ENV TZ Etc/UTC -RUN apk add --update --no-cache curl tzdata python2 make libmagic +RUN apk add --update --no-cache curl tzdata python3 make libmagic && \ + ln -s /usr/bin/python3 /usr/bin/python -COPY --from=py-ea /usr/lib/python2.7/site-packages /usr/lib/python2.7/site-packages +COPY --from=py-ea /usr/lib/python3.8/site-packages /usr/lib/python3.8/site-packages COPY --from=py-ea /opt/elastalert /opt/elastalert COPY --from=py-ea /usr/bin/elastalert* /usr/bin/