Как установить Django на Ubuntu 22.04 (инструкция)

Прежде чем начнём, рекомендую ознакомится с инструкциями по настройке сервера (LAMP) и FTP + Python.

Итак, начнём. На всякий случай проверим, вдруг Джанго уже установлен.

django-admin --version

Если нет, то инсталируем

sudo apt install python3-django

Также откроем порт 8000 (если он у вас не был открыт ранее) и перезапустим Апач:

sudo ufw allow 8000
sudo ufw disable
sudo ufw enable

Теперь переходим на сервере туда, где у вас хранятся сайты. В моём случае это:

cd /var/www/html

и создаём проект django командой:

django-admin startproject project1

это действие создаст папку project1 и в ней ещё одну папку с таким же названием файл settings.py, который нам нужно отредактировать. Используем команду:

nano project1/project1/settings.py

Находим в файле директиву ALLOWED_HOSTS = ['X.X.X.X'] и в квадратных скобочках (вероятно они у вас пустые), прописываем ip нашего сервера, заменив X своими числами:

ALLOWED_HOSTS в джанго

Обратите внимание, что вместо ip можно указывать URL вашего сайта. Тогда в кавычках через запятую надо указать как основной адрес сайта, так и псевдоним. Например так:

ALLOWED_HOSTS = ['icopydoc.com', 'www.icopydoc.com']

Далее нажимаем Ctrl+S для сохранения файла и Ctrl+X для выхода.

Теперь выполним миграцию Джанго

python3 manage.py migrate

а после создадим суперпользователя для админки Джанго

python3 manage.py createsuperuser

Остаётся только запустить сервер. Выполняем команду (вместо X - ip сервера).

python3 manage.py runserver X.X.X.X:8000

После этого вы увидите примерно такое сообщение:

Запуск проекта на Джанго из консоли сервера

А если откроете свой сервер, то стартанёт главная страничка Джаного http://X.X.X.X:8000. Админка джанго будет доступна по адресу: http://X.X.X.X:8000/admin/

Главная страница Джанго в Питоне

Для остановки сервера нужно воспользоваться командой Ctrl + C.

Установка Джанго в виртуальное окружение

Установка Джанго в ваше виртуальное окружение (virtualenv) делается в тех случаях, когда необходимо изолировать Django для каждого проекта. Если у вас только один проект на сервере, то смысла в таком решении нет. Зато, если вы используете Джанго в разных проектах, то это трюк предотвратит возможные изменения в одном проекте при редактировании другого.

Итак. Тут всё похоже с предыдущим способом за исключением ряда моментов. Для начала нам надо создать виртуальную среду (в примере я назову её icopydoc). Делается это так:

python3 -m venv icopydoc

далее мы запускаем эту виртуальную среду:

source icopydoc/bin/activate

Если нужно будет деактивировать виртуальную среду, то делается это командой deactivate,

Так вот. Особенность виртуальной среды в том, что в ней нет Джанго. Его нам надо будет проинсталлировать. Обратите внимание, что перед командами я написал (icopydoc)$ - эту часть в консоль вставлять не нужно. Это показывает, что мы находимся внутри виртуальной среды. У вас в консоли, когда вы активируете виртуальную среду, тоже будет её название в скобках.

(icopydoc)$ sudo apt install python3-django

После того как джанго установлен, создаём проект. Логика такая же, как и в случае без использования виртуальной среды. По этой причине повторяться не буду, просто напишу последовательность команд:

(icopydoc)$ django-admin startproject project2
(icopydoc)$ nano nano project2/project2/settings.py
(icopydoc)$ python3 manage.py migrate
(icopydoc)$ python3 manage.py createsuperuser
(icopydoc)$ python3 manage.py runserver X.X.X.X:8000

После завершения тестирования проекта нужно остановить выполнение runserver, нажав Ctrl + C. А для выхода из виртуальной среды воспользоваться командой deactivate:

deactivate

На этом всё. Теперь вы знаете, как выложить в интернет Джанго-проект на сервере и в виртуальном окружении.

Рейтинг: 5

2023-10-24 / / 0 комментариев / Про кодинг и сервер / , ,