Working docker devserver

This commit is contained in:
Alexandre Iooss 2020-09-01 13:52:28 +02:00
parent 09853ce990
commit bf7b187048
2 changed files with 19 additions and 21 deletions

View File

@ -4,12 +4,12 @@ FROM debian:buster-backports
ENV PYTHONUNBUFFERED 1
# Install Django, external apps, LaTeX and dependencies
# Outside Docker, you may also need git, acl, python3-venv, uwsgi, uwsgi-plugin-python3, nginx
RUN apt-get update && \
apt-get install -t buster-backports -y python3-django python3-django-crispy-forms \
python3-django-extensions python3-django-filters python3-django-polymorphic \
python3-djangorestframework python3-django-cas-server python3-psycopg2 python3-pil \
python3-babel python3-lockfile python3-pip \
python3-babel python3-lockfile python3-pip python3-phonenumbers ipython3 \
uwsgi uwsgi-plugin-python3 \
texlive-latex-extra texlive-fonts-extra texlive-lang-french \
gettext libjs-bootstrap4 fonts-font-awesome && \
rm -rf /var/lib/apt/lists/*
@ -22,15 +22,5 @@ RUN pip3 install -r /code/requirements.txt --no-cache-dir
WORKDIR /code
COPY . /code/
#RUN pip install gunicorn ptpython --no-cache-dir
# Configure nginx
RUN mkdir /run/nginx
RUN ln -sf /dev/stdout /var/log/nginx/access.log && ln -sf /dev/stderr /var/log/nginx/error.log
RUN ln -sf /code/nginx_note.conf_docker /etc/nginx/conf.d/nginx_note.conf
RUN rm /etc/nginx/conf.d/default.conf
EXPOSE 8080
ENTRYPOINT ["/code/entrypoint.sh"]
EXPOSE 80
CMD ["./manage.py", "shell_plus", "--ptpython"]

View File

@ -11,14 +11,22 @@ else
sed -i -e "s/REPLACEME/La Note Kfet \\\\ud83c\\\\udf7b/g" /code/note_kfet/fixtures/cas.json
fi
python manage.py compilemessages
python manage.py makemigrations
python manage.py migrate
# Set up Django project
python3 manage.py collectstatic --noinput
python3 manage.py compilemessages
python3 manage.py makemigrations
python3 manage.py migrate
nginx
if [ "$DJANGO_APP_STAGE" = "prod" ]; then
gunicorn -b 0.0.0.0:8000 --workers=2 --threads=4 --worker-class=gthread note_kfet.wsgi --access-logfile '-' --error-logfile '-';
if [ "$1" ]; then
# Command passed
echo "Running $@..."
$@
else
python manage.py runserver 0.0.0.0:8000;
# Launch server
if [ "$DJANGO_APP_STAGE" = "prod" ]; then
# FIXME: serve static files
uwsgi --http 0.0.0.0:8080 --master --module note_kfet.wsgi --processes 4
else
python3 manage.py runserver 0.0.0.0:8080;
fi
fi