Установка Django
Для начала нам нужно установить Python 2.7 или установить Python 3.6 с инструментом virtualenv, при помощи которого создаем виртуальную среду(например myenv) и в активированном режиме выполняем команду установки
(myenv)root@username:/home/myenv# pip3 install django
Замечание. Если мы используем интерпретатор версии 2.x, то пакетный менеджер по умолчанию будет просто pip, а если используется версия 3.x, то он будет называться pip3. В данном примере используется интерпретатор 3.6.
Далее создаем проект Django
(myenv)root@username:/home/myenv# django-admin startproject mysite
Теперь в папке(виртуальной среде) myenv будет новая папка mysite, в котором будет наш проект наш Django
Заходим в саму папку проекта mysite и мигрируем туда инструменты Django командой
(myenv)root@username:/home/myenv/mysite# python manage.py migrate
Замечание по возможным ошибкам. Вероятно, что появится ошибка версий, если помимо Python 3.7 у нас в системе Python 2.7, 3.5, 3.6 … и выглядит это так:
Traceback (most recent call last): File "manage.py", line 8, in <module> from django.core.management import execute_from_command_line ModuleNotFoundError: No module named 'django' The above exception was the direct cause of the following exception: Traceback (most recent call last): File "manage.py", line 14, in <module> ) from exc ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment?Чтобы это решить нужно либо поменять алиас
alias python=/usr/bin/python3.6Замечание. Команда добавления алиаса выше в идеале должна создать равносильную ссылку команды python с python3. Но, вероятно, что он может не сработать и тогда придется вручную править файл .bashrc
nano ~/.bashrcи добавляем туда линк
alias python=python3Файл .bashrc предназначен для задания псевдонимов команд и функций, используемых пользователями оболочки bash.
Либо запустить команды Django той версией, которая подходит
(myenv)root@username:/home/myenv/mysite# python3.6 manage.py migrate
Даем доступ к нашему проекту из вне, разрешив адрес сервера в файле проекта
mysite |______mysite |______settings.py
и задаем параметр, как адрес нашего VPS
ALLOWED_HOSTS = ["66.54.87.12"]
Замечание. Если проект запускается на локальном хостинге, то можно не указывать порт и адрес, а в файле настроек settings.py оставляем все как есть или указываем адрес 127.0.0.1
Запускаем сервер по IP адресу
(myenv)root@username:/home/myenv/mysite# python manage.py runserver 0:8001
Замечание. Цифра 0 означает,что мы запускаем наш сайт по адресу 0.0.0.0:8001 это говорит нам о том, что к нашему проекту отныне можно получить доступ из вне через IP VPS.
Запуск и создание администратора сайта
Теперь зайдя по адресу нашего IP мы увидим страницу приветствия проекта Django
Давайте теперь создадим нового суперпользователя для нашего проекта Django
(myenv)root@username:/home/myenv/mysite# python manage.py createsuperuser
Данная команда далее запросит имя пользователя, электронную почту и пароль, при помощи которых мы сможем войти в панель управления проектом через адрес 66.54.87.12:8001/admin
После удачного входа мы увидим страницу администратора