mirror of
				https://gitlab.crans.org/bde/nk20
				synced 2025-11-04 01:12:08 +01:00 
			
		
		
		
	Working docker devserver
This commit is contained in:
		
							
								
								
									
										16
									
								
								Dockerfile
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								Dockerfile
									
									
									
									
									
								
							@@ -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"]
 | 
			
		||||
 
 | 
			
		||||
@@ -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
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user