Skip to content
Snippets Groups Projects
Dockerfile 1012 B
FROM python:3-alpine AS python_build
COPY requirements-prod.txt /requirements.txt
RUN apk add --no-cache build-base git \
 python3-dev openssl-dev libffi-dev xmlsec xmlsec-dev \
 postgresql-dev mariadb-connector-c-dev \
 jpeg-dev zlib-dev freetype-dev lcms2-dev openjpeg-dev \
 tiff-dev \
 && pip install -r /requirements.txt

FROM node:alpine AS assets_build
RUN apk add --no-cache python make g++
COPY yarn.lock package.json webpack.config.js /
RUN yarn install --pure-lockfile
COPY assets /assets
RUN /node_modules/.bin/webpack-cli

FROM python:3-alpine
RUN apk add --no-cache xmlsec postgresql-libs mariadb-connector-c \
 zlib freetype jpeg openjpeg tiff lcms2 \
 && mkdir /app
WORKDIR /app

COPY --from=python_build /usr/local/ /usr/local/
COPY --from=assets_build /hiboo/static /app/hiboo/static
COPY hiboo /app/hiboo
COPY migrations /app/migrations
RUN pybabel compile -d hiboo/translations

ENV FLASK_APP hiboo
CMD gunicorn -w 4 -b :80 --access-logfile - --error-logfile - --preload 'hiboo:create_app()'