add refined dockerfile with gunicorn
This commit is contained in:
parent
f97202869c
commit
70ccad1d46
21
Dockerfile
21
Dockerfile
|
@ -1,4 +1,23 @@
|
|||
FROM python:3.8-alpine
|
||||
WORKDIR /app
|
||||
ADD . /app
|
||||
|
||||
# set env
|
||||
ENV PYTHONDONTWRITEBYTECODE 1
|
||||
ENV PYTHONUNBUFFERED 1
|
||||
EXPOSE 8000
|
||||
|
||||
# psycopg2 dependencies
|
||||
RUN apk update \
|
||||
&& apk add postgresql-dev gcc python3-dev musl-dev
|
||||
|
||||
# install dependencies
|
||||
ADD ./requirements.txt .
|
||||
RUN pip install -r requirements.txt
|
||||
|
||||
# add user
|
||||
RUN addgroup -S portier && adduser -S portier -G portier
|
||||
|
||||
# add code
|
||||
ADD --chown=portier:portier . /app
|
||||
|
||||
CMD ["/app/start.sh", "migrate_start"]
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
django>=3.0
|
||||
celery>=4.4
|
||||
gunicorn>=20
|
||||
|
|
|
@ -0,0 +1,19 @@
|
|||
#!/bin/sh
|
||||
|
||||
migrate() {
|
||||
python manage.py makemigrations
|
||||
python manage.py migrate
|
||||
}
|
||||
|
||||
case $1 in
|
||||
"create_superuser" )
|
||||
python manage.py createsuperuser --no-input --username "${ADMIN_USER:-admin}" --email "${ADMIN_EMAIL:-post@chaoswest.tv}"
|
||||
;;
|
||||
"migrate_start" )
|
||||
migrate
|
||||
gunicorn -w 4 --bind 0.0.0.0:${EXPOSE_PORT:-8000} portier.wsgi
|
||||
;;
|
||||
"only_start" )
|
||||
gunicorn -w 4 --bind 0.0.0.0:${EXPOSE_PORT:-8000} portier.wsgi
|
||||
;;
|
||||
esac
|
Loading…
Reference in New Issue