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