FROM python:3.8-alpine as build RUN apk add --no-cache \ build-base \ gcc \ gettext \ git \ jpeg-dev \ libffi-dev \ libjpeg \ musl-dev \ postgresql-dev \ python3-dev \ zlib-dev RUN mkdir -p /app/{code,venv} WORKDIR /app/code COPY Pipfile Pipfile.lock /app/code/ RUN python3 -m venv /app/venv RUN pip install pipenv setuptools ENV PATH="/app/venv/bin:$PATH" VIRTUAL_ENV="/app/venv" RUN pip install wheel cppy # Install dependencies into the virtual environment with Pipenv RUN pipenv install --deploy --verbose FROM python:3.8-alpine RUN apk add --no-cache \ cloud-utils \ libjpeg \ libpq \ libstdc++ \ libvirt-client \ openssh-client \ virt-install COPY . /app/code/ WORKDIR /app/code COPY --from=build /app/venv /app/venv ENV PATH="/app/venv/bin:$PATH" VIRTUAL_ENV="/app/venv" CMD ["gunicorn", "--bind", "0.0.0.0:5000", "-k", "gevent", "--worker-connections", "1000", "app:app"] VOLUME /app/code EXPOSE 5000