29 lines
907 B
Docker
29 lines
907 B
Docker
# syntax=docker/dockerfile:1
|
|
FROM python:3
|
|
ARG OPERATION
|
|
|
|
RUN mkdir -p /code
|
|
RUN useradd -d /code xf
|
|
RUN chown -R xf:xf /code
|
|
|
|
RUN mkdir -p /conf/static
|
|
RUN chown -R xf:xf /conf
|
|
|
|
RUN mkdir /venv
|
|
RUN chown xf:xf /venv
|
|
|
|
USER xf
|
|
ENV PYTHONDONTWRITEBYTECODE=1
|
|
ENV PYTHONUNBUFFERED=1
|
|
WORKDIR /code
|
|
COPY --chown=xf:xf requirements.txt /code/
|
|
RUN python -m venv /venv
|
|
RUN . /venv/bin/activate && pip install -r requirements.txt
|
|
|
|
# CMD . /venv/bin/activate && uwsgi --ini /conf/uwsgi.ini
|
|
|
|
CMD if [ "$OPERATION" = "uwsgi" ] ; then . /venv/bin/activate && uwsgi --ini /conf/uwsgi.ini ; else . /venv/bin/activate && exec python manage.py runserver 0.0.0.0:8000; fi
|
|
|
|
# CMD . /venv/bin/activate && uvicorn --reload --reload-include *.html --workers 2 --uds /var/run/socks/app.sock app.asgi:application
|
|
# CMD . /venv/bin/activate && gunicorn -b 0.0.0.0:8000 --reload app.asgi:application -k uvicorn.workers.UvicornWorker
|