Джанго

Веб-фреймворк Python, що сприяє швидкій розробці та чіткому, прагматичному дизайну.

1. SSH на ваш сервер

ssh root@<server-ip>

2. Знайдіть дані для входу

  • Користувач за замовчуванням: django
  • Пароль зберігається в: /root/.cloudzy-creds

(Необов'язково) Змініть пароль за замовчуванням: passwd django

3. Перейти до користувача програми

su - django

4. PostgreSQL (опціонально)

Якщо PostgreSQL було встановлено, налаштуйте базу даних і користувача (приклад):

sudo -u postgres psql
CREATE DATABASE <db>;
CREATE USER <user> WITH PASSWORD <password>;
GRANT ALL PRIVILEGES ON DATABASE <db> TO <user>;
q

Потім оновіть settings.py DATABASES з господарем localhost, ім'я бази даних, ім'я користувача та пароль. Запустіть python manage.py migrate.

5. Розгорніть свою програму

Зразок програми Flask вже працює і доступний за адресою: http://<server-ip

Щоб розгорнути власний додаток:

  1. Перейдіть до каталогу вашої програми (або клонуйте новий проект): cd ~/django_app
  2. (Необов'язково) Замінити стандартну програму: git clone <your_repo_url> .
  3. Активуйте віртуальне середовище: source venv/bin/activate
  4. Встановіть необхідні пакети: pip install -r requirements.txt
  5. Налаштувати settings.py: набір ALLOWED_HOSTS до вашого домену/IP-адреси та переконайтеся, що STATIC_ROOT існує.
  6. Перенести базу даних: python manage.py migrate
  7. Збирати статику в STATIC_ROOT: python manage.py collectstatic --noinput
  8. Перезапустіть Gunicorn, щоб застосувати зміни: sudo systemctl restart gunicorn
  9. Перезапустіть Nginx: sudo systemctl restart nginx

6. Доступ до вашого додатка

Your Django app is available at: http://<server-ip

Nginx здійснює зворотне проксі-передавання запитів до Gunicorn через сокет Unix.

7. Змінити порт або домен?

Щоб налаштувати домен, порт або додати SSL:

  1. Редагування конфігурації сайту Nginx: sudo nano /etc/nginx/sites-available/gunicorn_django
  2. Конфігурація тесту: sudo nginx -t
  3. Перезавантажити Nginx: sudo systemctl restart nginx

8. Увімкніть HTTPS (опціонально)

Використовуйте Certbot для увімкнення HTTPS.

Встановіть certbot:

sudo apt install certbot python3-certbot-nginx -y

Отримуйте сертифікати та автоматично оновлюйте Nginx:

sudo certbot --nginx -d example.com

Тест:

nginx -t && sudo systemctl reload nginx

Деталі заявки