2018-12-30 21:43:04 +01:00
|
|
|
FROM alpine:3.8
|
2018-12-30 00:04:13 +01:00
|
|
|
|
2018-12-30 21:43:04 +01:00
|
|
|
ARG VERSION
|
2018-12-30 00:04:13 +01:00
|
|
|
ENV VERSION master
|
|
|
|
|
2020-06-06 15:23:12 +02:00
|
|
|
ARG URLCONTEXT
|
|
|
|
|
2018-12-30 21:37:09 +01:00
|
|
|
ENV uid 1337
|
|
|
|
ENV gid 1337
|
|
|
|
ENV user lemur
|
|
|
|
ENV group lemur
|
|
|
|
|
2018-12-30 21:43:04 +01:00
|
|
|
RUN addgroup -S ${group} -g ${gid} && \
|
|
|
|
adduser -D -S ${user} -G ${group} -u ${uid} && \
|
2018-12-31 13:21:30 +01:00
|
|
|
apk --update add python3 libldap postgresql-client nginx supervisor curl tzdata openssl bash && \
|
2018-12-30 21:43:04 +01:00
|
|
|
apk --update add --virtual build-dependencies \
|
2018-12-30 00:04:13 +01:00
|
|
|
git \
|
|
|
|
tar \
|
|
|
|
curl \
|
|
|
|
python3-dev \
|
|
|
|
npm \
|
|
|
|
bash \
|
|
|
|
musl-dev \
|
|
|
|
gcc \
|
|
|
|
autoconf \
|
|
|
|
automake \
|
2020-06-06 15:23:12 +02:00
|
|
|
libtool \
|
2018-12-30 00:04:13 +01:00
|
|
|
make \
|
|
|
|
nasm \
|
|
|
|
zlib-dev \
|
|
|
|
postgresql-dev \
|
|
|
|
libressl-dev \
|
|
|
|
libffi-dev \
|
|
|
|
cyrus-sasl-dev \
|
2018-12-30 21:43:04 +01:00
|
|
|
openldap-dev && \
|
2018-12-30 22:48:28 +01:00
|
|
|
mkdir -p /opt/lemur /home/lemur/.lemur/ && \
|
|
|
|
curl -sSL https://github.com/Netflix/lemur/archive/$VERSION.tar.gz | tar xz -C /opt/lemur --strip-components=1 && \
|
2018-12-30 21:43:04 +01:00
|
|
|
pip3 install --upgrade pip && \
|
|
|
|
pip3 install --upgrade setuptools && \
|
2018-12-31 15:37:48 +01:00
|
|
|
mkdir -p /run/nginx/ /etc/nginx/ssl/ && \
|
2018-12-31 17:13:31 +01:00
|
|
|
chown -R $user:$group /opt/lemur/ /home/lemur/.lemur/
|
2018-12-30 21:43:04 +01:00
|
|
|
|
2018-12-30 00:04:13 +01:00
|
|
|
WORKDIR /opt/lemur
|
|
|
|
|
2018-12-30 21:43:04 +01:00
|
|
|
RUN npm install --unsafe-perm && \
|
|
|
|
pip3 install -e . && \
|
|
|
|
node_modules/.bin/gulp build && \
|
2020-06-06 15:23:12 +02:00
|
|
|
node_modules/.bin/gulp package --urlContextPath=${URLCONTEXT} && \
|
2018-12-30 21:43:04 +01:00
|
|
|
apk del build-dependencies
|
2018-12-30 00:04:13 +01:00
|
|
|
|
2020-01-31 20:52:59 +01:00
|
|
|
COPY entrypoint /
|
|
|
|
COPY src/lemur.conf.py /home/lemur/.lemur/lemur.conf.py
|
|
|
|
COPY supervisor.conf /
|
|
|
|
COPY nginx/default.conf /etc/nginx/conf.d/
|
|
|
|
COPY nginx/default-ssl.conf /etc/nginx/conf.d/
|
|
|
|
|
|
|
|
RUN chmod +x /entrypoint
|
2018-12-30 00:04:13 +01:00
|
|
|
WORKDIR /
|
|
|
|
|
2018-12-30 21:37:09 +01:00
|
|
|
HEALTHCHECK --interval=12s --timeout=12s --start-period=30s \
|
2018-12-30 21:43:04 +01:00
|
|
|
CMD curl --fail http://localhost:80/api/1/healthcheck | grep -q ok || exit 1
|
2018-12-30 21:37:09 +01:00
|
|
|
|
2018-12-30 22:01:28 +01:00
|
|
|
USER root
|
2018-12-30 00:04:13 +01:00
|
|
|
|
2018-12-30 21:43:04 +01:00
|
|
|
ENTRYPOINT ["/entrypoint"]
|
2018-12-30 21:37:09 +01:00
|
|
|
|
2018-12-30 00:04:13 +01:00
|
|
|
CMD ["/usr/bin/supervisord","-c","supervisor.conf"]
|