Как я могу начать проект на домене, используя gunicorn и nginx? - PullRequest
2 голосов
/ 23 октября 2019

У меня есть domain (example.com). Как я могу запустить проект в этом домене, используя nginx и gunicorn. Я использую Python 3.6 и Django 2.2.

ufw status - inactive

Nginx

/ etc / nginx / sites-available / example.com

server {
    listen 80;
    listen [::]:80;

    server_name example.com;

    location = /favicon.ico {
        access_log off;
        log_not_found off;
    }

    location /static/ {
        root /home/project;
    }

    location / {
        include proxy_params;
        proxy_pass http://unix:/run/gunicorn.sock;
    }
}

nginx -t

nginx: синтаксис файла конфигурации /etc/nginx/nginx.conf в порядке

nginx: файл конфигурации /Тест etc / nginx / nginx.conf прошел успешно

Gunicorn

gunicorn.service

[Unit]
Description=gunicorn daemon
Requires=gunicorn.socket
After=network.target

[Service]
User=root
Group=root
WorkingDirectory=/home/project
ExecStart=/home/project/projectenv/bin/gunicorn \
     --access-logfile - \
     --workers 3 \
     --bind unix:/run/gunicorn.sock \
     project.wsgi:application

[Install]
WantedBy=multi-user.target

gunicorn.socket

[Unit]
Description=gunicorn socket

[Socket]
ListenStream=/run/gunicorn.sock

[Install]
WantedBy=sockets.target

Django

/ home / project / project / settings

ALLOWED_HOSTS = ['example.com', 'localhost']

DATABASES = {
     'default': {
         'ENGINE': 'django.db.backends.postgresql_psycopg2',
         'NAME': 'db_name',
         'USER': 'db_user',
         'PASSWORD': '1q2w3e4r',
         'HOST': 'localhost',
         'PORT': '',
     }
}
...