build ok gunicorn+nginx
This commit is contained in:
32
Dockerfile
Normal file
32
Dockerfile
Normal file
@@ -0,0 +1,32 @@
|
||||
FROM python:3.11-slim
|
||||
|
||||
RUN apt update && apt install -y nginx
|
||||
|
||||
RUN pip install poetry
|
||||
|
||||
WORKDIR /OCLettings2
|
||||
|
||||
COPY pyproject.toml poetry.lock ./
|
||||
|
||||
COPY nginx/nginx.conf /etc/nginx/conf.d/default.conf
|
||||
|
||||
RUN poetry config virtualenvs.create false && \
|
||||
poetry install --no-interaction --no-ansi --no-root && \
|
||||
poetry add gunicorn
|
||||
|
||||
COPY . .
|
||||
|
||||
COPY nginx/nginx.conf /etc/nginx/conf.d/default.conf
|
||||
|
||||
RUN rm -rf /var/www/html* && \
|
||||
mkdir -p /run/nginx
|
||||
|
||||
RUN poetry run python manage.py collectstatic --noinput
|
||||
|
||||
EXPOSE 80
|
||||
|
||||
CMD service nginx start && \
|
||||
poetry run gunicorn --bind 127.0.0.1:8000 --env DJANGO_SETTINGS_MODULE=oc_lettings_site.settings oc_lettings_site.wsgi
|
||||
#CMD ["poetry", "run", "gunicorn", "--bind", "0.0.0.0:8080", "--env", "DJANGO_SETTINGS_MODULE=oc_lettings_site.settings", "oc_lettings_site.wsgi"]
|
||||
|
||||
|
||||
22
nginx/nginx.conf
Normal file
22
nginx/nginx.conf
Normal file
@@ -0,0 +1,22 @@
|
||||
upstream django {
|
||||
server 127.0.0.1:8000;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
server_name localhost;
|
||||
|
||||
location /static/ {
|
||||
alias /OCLettings2/staticfiles/;
|
||||
expires 30d;
|
||||
}
|
||||
|
||||
location / {
|
||||
proxy_pass http://django;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user