Skip to content
This repository has been archived by the owner on Mar 25, 2019. It is now read-only.

Linux. Локальная копия drupal.ru

avakorin edited this page May 17, 2018 · 15 revisions

Есть два способа развернуть локальную копию drupal.ru простой, ручной и автоматический. Первый способ заключается в самостоятельном скачивании кода и дампа, а для второго нужно настроить локальную среду.

Системные требования к ПО

  • PHP версии не ниже 5.4, т.к. в коде используется сокращенная форма массивов: ['i am array']
  • MySQL с поддержкой utf8mb4 (подробности). Минимальная версия Mysql 5.5. Для mysql 5.5, 5.6 и соответствующих им веток percona и mariadb, должен быть включён innodb_large_prefix. Для этого надо добавить в конфиг:
[mysqld]
innodb_large_prefix=1
innodb_file_format=barracuda
innodb_file_per_table

Способ первый

  1. Делаем форк репозитория (сверху справа под иконкой профиля "Fork")
  2. Клонируем свой новый репозиторий git clone git@github.com:<your username>/drupal.ru.git
  3. Качаем дамп отсюда https://drupal.ru/sites/default/files/drupalru-dump.sql.gz и заливаем его в свою базу любыми привычными способами

Авторизация под админом:

  • Login: admin
  • Password: 111

Способ второй

Для автоматического развёртывания и синхронизации баз в последующем, можно использовать скрипт в репозитории, но для него необходимо настроить окружение:

  • Иметь установленный Drush версий 7, 8 или 9 (6 не тестировался).
  • Иметь drush-алиасы указывающие на локальную копию drupal.ru

Настройка локального окружения Alpha

  1. Делаем форк репозитория (сверху справа под иконкой профиля "Fork")

  2. Вы можете использовать скрипт для настройки локального окружения. Он:

    • скачает репозиторий
    • создаст drush-алиасы
    • создаст конфигурационные файлы
    • не создаст базу
    • не настроит локальный web-сервер

    Он спросит у вас:

    • "Имя пользователя в GitHub", для того, чтобы скачать репозиторий. К моменту запуска уже должен быть сделан форк.
    • "Имя вашего будущего локального сайта", для того, чтобы знать с каким именем создавать папку и куда потом мапить drush-алиасы
    • "Путь до дирректории, где будет создана папка с сайтом" - это папка с сайтами, на которую настроен ваш веб-сервер
    • "Имя базы данных"
    • "Имя пользователя базы данных"
    • "Пароль базы данных", чтобы создать конфигурационные файлы
    • "Drush алиас", чтобы создать алиас файл (~/.drush/.alias.drushrc.php) и использовать в будущем.
  3. После этого необходимо:

    • Если Вы не использовали скрипт для настройки локального окружения, перед запуском инсталлера, необходимо переключится на ветку "dev" git checkout dev
    • Перейти в папку сайта profiles/drupalru/scripts/sync
    • И запустить команду ./sync-db.sh @<ваш алиас>. Т. е. если вы, на вопрос "Drush алиас" ввели ответ "dru", то команда будет выглядеть так ./sync-db.sh @dru

Проблемы

  1. После развёртки вы не увидите логотипа и дефолтного аватара пользователя. В будущем это будет исправлено, а пока, для абсолютного соответствия локальной версии продакшену, необходимо скачать два файла:

    и положить их в свою локальную папку sites/default/files.

Дополнительные настройки

Могут быть полезны в settings.php:

// Выключение кэширования.
$conf['cache']                  = FALSE;
// Выключение кэширования блоков.
$conf['block_cache']            = FALSE;
// Установка времени жизни кэша в 0.
$conf['cache_lifetime']         = 0;
// Установка времени жизни кэшированных страниц в 0.
$conf['page_cache_maximum_age'] = 0;
// Выключение сжатия страниц.
$conf['page_compression']       = FALSE;
// Выключение агрегирования CSS.
$conf['preprocess_css']         = FALSE;
// Выключение агрегирования JS.
$conf['preprocess_js']          = FALSE;

// Debug.
// Включение отображения всех ошибок.
$conf['error_level']           = 2;
// Выключение отладки темы в HTML.
$conf['theme_debug']           = 0;