Установка Django CMS в Virtuozzo PaaS

Автоматическая установка

Самый быстрый способ развернуть Django CMS — использовать готовое приложение из Магазина Virtuozzo PaaS.
Это позволит получить полностью настроенное окружение за несколько минут.

  1. Войдите в панель управления Dashboard Virtuozzo Application Platform.
  2. Откройте Магазин приложений и найдите Django CMS.
  3. Нажмите Установить и укажите имя окружения.
  4. После установки появится окно с данными для доступа к домашней странице и административной панели Django CMS.

Ручная установка

Ручная установка подойдeт, если вы хотите контролировать процесс и параметры окружения.

Создайте новое Python-окружение

  1. Перейдите во вкладку Python — сервер Apache будет выбран автоматически.
  2. Укажите лимиты ресурсов и имя окружения (например, django-cms).
  3. Нажмите Создать.

Примечание:
Django CMS требует базу данных. По умолчанию используется SQLite — она разворачивается в контейнере Apache.
Для продакшн-проектов рекомендуется добавить отдельную ноду с MySQL или PostgreSQL.


Подключитесь к контейнеру по Web SSH

Откройте Web SSH в панели управления и выполните следующие команды:

# создайте виртуальное окружение
virtualenv virtenv

# активируйте его
source virtenv/bin/activate

# установите инсталлятор Django CMS
pip install djangocms-installer

Создайте проект Django CMS

Удалите предустановленное приложение и инициализируйте новый проект:

rm -rf ROOT
djangocms -p . ROOT -s

Настройте WSGI

Откройте файл /var/www/webroot/ROOT/wsgi.py и замените содержимое на:

import os, sys
virtenv = os.path.expanduser('~') + '/virtenv/'
virtualenv = os.path.join(virtenv, 'bin/activate_this.py')
try:
    if sys.version.split(' ')[0].split('.')[0] == '3':
        exec(compile(open(virtualenv, "rb").read(), virtualenv, 'exec'), dict(__file__=virtualenv))
    else:
        execfile(virtualenv, dict(__file__=virtualenv))
except IOError:
    pass

sys.path.append(os.path.expanduser('~'))
sys.path.append(os.path.expanduser('~') + '/ROOT/')
os.environ['DJANGO_SETTINGS_MODULE'] = 'ROOT.settings'

from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

Сохраните изменения.


Настройте параметры проекта

В файле /var/www/webroot/ROOT/settings.py измените параметры:

ALLOWED_HOSTS = ["{envDomain}"]
MEDIA_ROOT = os.path.join(DATA_DIR, 'ROOT', 'media')
STATIC_ROOT = os.path.join(DATA_DIR, 'ROOT', 'static')
STATICFILES_DIRS = (os.path.join(BASE_DIR, 'ROOT', 'static_local'),)

Совет:
Чтобы разрешить доступ с любого домена, используйте ALLOWED_HOSTS = ["*"].
Если используется внешняя база данных — укажите параметры подключения в разделе DATABASES.


Настройте статику и перезапустите сервер

mkdir ROOT/static_local
mkdir ROOT/media
python manage.py collectstatic

После этого перезапустите веб-сервер в панели управления.


Проверьте работу приложения

Перейдите по адресу вашего окружения. Django CMS откроет страницу входа в админ-панель.
Для тестового входа используйте логин admin и пароль admin.


Развeртывание существующего проекта

Если у вас уже есть готовое Django-приложение, его можно задеплоить всего за несколько шагов.

Убедитесь, что в архиве проекта есть:

  • requirements.txt — список зависимостей Python
  • wsgi.py — файл для запуска приложения через mod_wsgi
  1. Загрузите архив в менеджер развертывания.
    Для примера можно использовать готовый архив:
    Скачать пример
  2. Разверните архив в ноде Apache Python.
  3. После деплоя откройте ваш домен и войдите в админку Django CMS.

Если вы использовали тестовый архив, логин и пароль по умолчанию:
jelastic / jelastic


Результат:
Вы развернули Django CMS в Virtuozzo PaaS — вручную или автоматически.
Теперь вы можете приступить к настройке шаблонов, плагинов и контента в удобной админ-панели.

Поддержка

Если возникли вопросы, обратитесь в техническую поддержку PS Cloud Services.

question
Не нашли подходящего ответа?
Напишите запрос в службу поддержки
Написать сейчас