forked from data.coop/membersystem
43 lines
952 B
Docker
43 lines
952 B
Docker
FROM python:3.12-slim-bullseye
|
|
|
|
ENV PYTHONFAULTHANDLER=1 \
|
|
PYTHONUNBUFFERED=1 \
|
|
PYTHONDONTWRITEBYTECODE=1 \
|
|
PYTHONHASHSEED=random \
|
|
PIP_NO_CACHE_DIR=off \
|
|
PIP_DISABLE_PIP_VERSION_CHECK=on \
|
|
PIP_DEFAULT_TIMEOUT=100
|
|
ARG BUILD
|
|
ENV BUILD ${BUILD}
|
|
|
|
WORKDIR /app
|
|
|
|
RUN groupadd -g 1000 www && useradd -u 1000 -ms /bin/bash -g www www \
|
|
&& apt-get update \
|
|
&& apt-get install -y \
|
|
binutils \
|
|
libpq-dev \
|
|
build-essential \
|
|
netcat-openbsd \
|
|
libcairo2 \
|
|
libpango-1.0-0 \
|
|
libpangocairo-1.0-0 \
|
|
libgdk-pixbuf2.0-0 \
|
|
libffi-dev \
|
|
shared-mime-info \
|
|
gettext
|
|
|
|
COPY --chown=www:www . .
|
|
|
|
RUN mkdir /app/src/static \
|
|
&& chown www:www /app/src/static
|
|
|
|
RUN pip install . \
|
|
&& django-admin compilemessages
|
|
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
|
|
|
EXPOSE 8000
|
|
|
|
CMD ["uvicorn", "project.asgi:application", "--host", "0.0.0.0", "--port", "8000", "--workers", "3", "--lifespan", "off", "--app-dir", "/app/src"]
|