Skip to content

nicholasid7/site_deploy_py_any_notes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 

Repository files navigation

site_deploy_py_any_notes

Деплой Django сайта на PythonAnywhere

Краткое описание процесса деплоя (действия, команды в консоли etc.)

0. Регаемся в облачном сервисе PythonAnywhere 

1. Создаем виртуальное окружение

mkvirtualenv --python=python3.8 <virtualenv_name>

workon <virtualenv_name> - активация виртуального окружения deactivate - деактивация

2. Проверка инсталляции встроенного установщика пакетов и админской части  

which pip

which django-admin.py

3. Устанавливаем необходимые для работы вашего сайта или приложения пакеты

a) pip install <имя пакета>

или

b) pip freeze > requirements.txt - для выгрузки всех пакетов из среды разработки

Далее на PythonAnywhere, запускаем

pip install -r requirements.txt

4. Проверяем наличие пакетов

pip list

  В моем случае это следующие основные пакеты:
  • appdirs 1.4.4
  • asgiref 3.3.1
  • attrs 20.3.0
  • bcrypt 3.2.0
  • certifi 2020.12.5
  • cffi 1.14.4
  • chardet 4.0.0
  • cryptography 3.3.1
  • defusedxml 0.7.0rc2
  • distlib 0.3.1
  • Django 3.1.5
  • django-appconf 1.0.4
  • django-bootstrap-toolkit 2.15.0
  • django-bootstrap3 14.2.0
  • django-crispy-forms 1.10.0
  • django-forms-bootstrap 3.1.0
  • django-registration-redux 2.9
  • django-taggit 1.3.0
  • django-user-accounts 3.0.2
  • filelock 3.0.12
  • idna 2.10
  • jsonschema 3.2.0
  • Markdown 3.3.3
  • oauthlib 3.1.0
  • pbr 5.5.1
  • Pillow 8.1.0
  • pip 20.3.3
  • psycopg2 2.8.6
  • pycparser 2.20
  • PyJWT 2.0.1
  • pyrsistent 0.17.3
  • python3-openid 3.2.0
  • pytz 2020.5
  • requests 2.25.1
  • requests-oauthlib 1.3.0
  • setuptools 51.3.3
  • six 1.15.0
  • social-auth-app-django 4.0.0
  • social-auth-core 3.3.3
  • sqlparse 0.4.1
  • stevedore 3.3.0
  • urllib3 1.26.2
  • virtualenv 20.4.0
  • virtualenv-clone 0.5.4
  • virtualenvwrapper 4.8.4
  • wheel 0.36.2
  • 5. Клонируем git-репо с вашим проектом или копируем все файлы вручную на сервис PythonAnywhere

    #Cloning your Git Repository

    а) git clone https://github.com/<git_user_name>/<repo_name>.git

    б) для приватных репо

    #To private

    cd git_repo

    git clone https://<git_user_name>:<git_pass> @github.com/<git_user_name>/<repo_name>.git

    6. Команды для миграции моделей (сущностей) в БД и разворачивания вашего сайта-приложения в облачном сервисе PythonAnywhere

    Following commands, ex:

    (prdsite) 16:55 ~/prdsite/prdsite_proj $ python manage.py makemigrations <application_name>

    (prdsite) 16:55 ~/prdsite/prdsite_proj $ python manage.py migrate

    (prdsite) 16:56 ~/prdsite/prdsite_proj $ python populate_mblog.py

    (prdsite) 16:57 ~/prdsite/prdsite_proj $ python manage.py createsuperuser

    python manage.py collectstatic

    7. Настраиваем Web-сервис | PythonAnywhere

    a) WSGI - user_name_pythonanywhere_com_wsgi.py (см. данный git-репо)

    b) необходимые рабочие директории (с кодом, со статикой, медиа) и др. в разделе Web в облачном сервисе PythonAnywhere

    8. Настраиваем settings.py под ваши нужды

    Зависит от функционала сайта.

    9. Пример получившегося деплоя сайта-блога

    nicholasid7.pythonanywhere.com

    Всем, peace!

    Congratulations!

    About

    Деплой Django сайта на PythonAnywhere

    Topics

    Resources

    Stars

    Watchers

    Forks

    Releases

    No releases published

    Packages

     
     
     

    Contributors

    Languages