Меню Рубрики

Установка drush на хостинге

Установка DRUSH на виртуальный хостинг TimeWeb

Не буду расписывать как утилита drush облегчает жизнь друпалеру, об этом вы и сами знаете.

Но вот на виртуальных хостингах он присутствует только на специализированных. А как быть, если вы используете что-то иное? Мы в своей практике рекомендуем клиентам пользоваться услугами хостинга timeweb.com — стабильная работа, недорогие тарифы, сервера в РФ, возможность оплаты по безналичному расчету. В общем, весьма приятный вариант. Далее я расскажу как достаточно быстро настроить драш на примере этого хостинга.

Установка Composer

Благо есть инструкция, правда найти ее на сайте таймвеба сложно. Пришлось гуглить, и то потому что я знал, что она там есть)

Итак инструкция — http://timeweb.com/ru/help/pages/viewpage.action?page >

1. Подключитесь к серверу по SSH и скачайте дистрибутив с официального сайта:

2. Добавьте alias для упрощенного запуска в файл .bash_profile (.bashrc — можно, но необязательно) — этих файлов по умолчанию нет, просто создайте их в домашней директории (в примере PHP 5.6; может быть использована другая версия):

(u и user — первая буква Вашего логина и Ваш логин). Команда pwd поможет вам узнать букву и логин. Так же вместо php56 можно использовать php7.0 (/opt/php7.0/bin/php)

Либо работаем от домашней папки

3. Перезапустите соединение по SSH (или выполните команду source .bash_profile) и проверьте работу Composer:

Если показалось что-то вроде

то все ОК, мы готовы ставить drush!

Установка Drush

Официальная инструкция — http://docs.drush.org/en/master/install/

Собственно следуем пунктам.

В результате в домашней директории появится папка .config/composer/vendor

2. Прописываем алиасы по аналогии с композером .bash_profile (.bashrc) следующими строками

и перезапускаем SSH-соединение.

3. Проверяем все ли верно получилось:

Супер! Продолжаем работать 😉

Если все же драш не заработал и начинает ругаться на версию PHP примерно так:

То вам должно помочь следующее: укажите в файлах .bash_profile и .bashrc в первой строке версию PHP для работы Drush:

UPD2. Теперь DRUSH_PHP не работает. Необходимо прописать пути примерно так:

Обратите внимание на путь /opt/php70/bin — он прописан до директории, а не самого исполняемого файла.

Огромная благодарность за помощь в решении вопроса Никите Малышеву и weitzman (https://github.com/drush-ops/drush/issues/2826 )

Итоговый .bash_profile будет выглядеть примерно так:

ЗЫ соответственно версия должна использоваться одинаковая. Пути смотрите на своем хостинге, в примере — timeweb.

источник

Drush для CMS Drupal

Что такое Drush?

В этой статье я поделюсь с вами некоторой информацией по использованию мощной утилиты Drush, которую я использую для упрощения типовых, шаблонных действий при использовании CMS Drupal.

При необходимости за считанные секунды можно с помощью одного или нескольких действий произвести загрузку и установку СMS Drupal, не вылезая из терминальной строки, сделать резервную копию или восстановить сайт.

Использование Drush имеет очевидные преимущества перед бытовым администрированием сайтов, поэтому если Вы размещаете ряд проектов на CMS Drupal, я настоятельно советую ознакомиться с функционалом инструмента Drush для упрощения своих рутинных задач при работе с CMS Drupal.

Преимущества использования Drush

Замечательный пример использования Drush представлен в следующем видео:

Как можно видеть на видео, в схватке столкнулись простой веб-мастер и специалист, освоивший Drush.

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

Способ установки Drush на хостинге Timeweb

Официальная документация по установке Drush представлена по ссылке: клик

  1. Настраиваем подключение по SSH к Вашему аккаунту на хостинге: клик
  2. Копируем ссылку на файл drush.phar из последнего релиза Drush: клик.

На момент составления статьи была версия 8.1.3, прямая ссылка выглядела следующим образом:
https://github.com/drush-ops/drush/releases/download/8.1.3/drush.phar

Загружаем исполняемый файл drush.phar на Ваш аккаунт в удобную для Вас папку по SSH с помощью утилиты wget (в данном случае я произведу загрузку в папку сайта):

По умолчанию при обращении к исполняемому файлу из терминальной строки используется PHP 5.3, что приводит к возникновению ошибки:

Решением будет использовать более новую версию, например, PHP 7.0.

Утилита whereis php позволяет узнать точный путь до интепретатора нужной версии.

Введем в терминальной строке следующую команду:

Таким образом мы с вами успешно получим желаемый вывод доступных команд drush. Каждый раз вводить такую конструкцию достаточно утомительно, поэтому можно создать alias для такой команды, например, создав файл с именем .bashrc в домашней папке аккаунта, а после поместив туда следующую конструкцию: alias drush=»/opt/php7.0/bin/php /абсолютный/путь/до/папки/где/расположен/drush.phar».

Читайте также:  Установка лебедки в здании

Узнать абсолютный путь помогает утилита pwd, например:

Далее вводим следующую конструкцию, чем перезагружаем значения cодержимого .bashrc:

Убедимся в том, что обновление файла произошло, введем утилиту alias, в случае успеха предыдущих действий получим следующий вывод.

Всё в порядке, теперь при вводе drush в строке мы с вами сразу вызываем нужный файл по нужному нам пути.

В дополнение к приведенной инструкции cтоит заметить, что существует альтернативный способ установки через Composer. Субъективно я менее люблю обозначенный вариант, в связи с чем при необходимости учитывайте наличие альтернативной возможности, о которой можно прочитать в Сети либо в официальной документации по следующей ссылке: клик

Пример использования Drush

Теперь мы с вами можем ввести утилиту drush dl в терминальной строке, и актуальный дистрибутив будет загружен в считанные секунды. Далее останется переместить его в нужную нам папку, а после в одну команду, предварительно создав базу данных на хостинге в разделе “Базы данных MySQL”, можно произвести установку.

Соглашаемся на производимые скриптом, действия, вуаля, установка завершена.

Заключение

Таким образом мы совместно с вами смогли установить Drupal с помощью всего 2 утилит! Drush обладает очень широким функционалом, поэтому с помощью него можно создавать резервные копии, разворачивать их, устанавливать новые сайты и многое, многое другое!

Надеюсь, что моя вводная статья по использованию Drush не отпугнет вас от использования этой утилиты, а наоборот, заинтересует и даст мотивацию освоить её синтаксис и стать еще большим экспертом при работе со своими проектами на CMS Drupal!

источник

Drupal Русскоязычное сообщество

Не удается настроить drush на хостинге.
Друпал с сайтом размещен в директории www/htdocs.

  1. Куда следует класть папку с drush? В корень (на одном уровне с www) или в htdocs?
  2. Если у меня на компе стоит windows, на боевой хостинг мне нужна сборка drush под windows? Или это имеет смысл только при использовании на локальном сервере?

В общем –то пробовала различными способами. В результате получаю либо Permission denied либо Fatal error
При установке http://ftp.drupal.org/files/projects/drush-7.x-5.9.tar.gz в корень получаю ошибку:

При этом в настройках сервера в личном кабинете хостинга указано php 5.3

При установке его же в директорию htdocs получаю Permission denied. С windrush в обоих случаях Permission denied.
Подскажите, что делаю не так?

Комментарии

Не уверен, что его вообще можно на обычный шаред поставить. В саппорт ХЦ писать не пробовали?

http://webwin.name/kak-ustanovit-drush-na-virtualnyy-hosting вот по этому мануалу ставится куда угодно. Ставить можно в любую папку вообще. Но лучше хотя бы на один уровень выше корня сайта, чтобы при drush up drupal драш не снёс сам себя.

по этому мануалу я и пыталась поставить drush. и при проверке на st получаю fatal error (если ставить в корень) или Permission denied.

и при проверке на st получаю fatal error

куда ставить — в свою домашнюю ставьте,
если заблудились где это — cd
(искренне надеюсь, что .bashrs тамже))
так-же проверьте права на запись в этом каталоге ls -la

не постесняйтесь обратиться к ТП хостера на предмет сабжа,
возможно, они вам подскажут, с какими траблами столкнетесь.

В техподдержку-то я написала, пока как-то тихо. Да и опыт предыдущих переписок с ними показывает, что наиболее популярный совет «Идите к своему разработчику».

  1. По http://webwin.name/kak-ustanovit-drush-na-virtualnyy-hosting этому примеру поставила drush в корень (т.е. на одном уровне с www (друпал с сайтом лежит в www/htdocs)).
  2. Подключаюсь с помощью putty по ssh.
  3. Ввожу команду

/drush/drush st (находясь в корне хоста)

  • Получаю
  • Если разместить папку drush внутри директории www (что на уровень выше drupal с сайтом), то на команду

    /www/drush/drush st получаю Permission denied.
    У каких файлов -папок нужно смотреть права?
    Все вышеописанное при правах (по умолчанию изначально):
    www 710
    htdocs 711
    drush (папка) 755
    drush.php 644

    по этому мануалу я и пыталась поставить drush

    Установить composer не получается.
    Условия, описанные в инструкции, не соответствуют моим.

    1. Отсутствуют .bash_profile, или .bashrc, или .cshrc (но есть некий .vimrc)
    2. Нет php-cli
    3. Нет папки bin

    Пыталась скачать композер командами

    Все безуспешно. Единственное, на wget получила ошибку

    Попробовала
    wget —no-check-certificate https: //getcomposer.org/installer | php
    получила

    2015 -08-07 22 : 16 : 33 ( 704 KB / s ) — ‘installer’ saved [ 275841 / 275841 ]

    X-Powered-By: PHP / 5.2.17
    Content-type: text / html

    И в домашней директории появился файл installer (никакого composer.phar нет)
    Дальше по инструкции опять не получается. Пробовала алиасы писать в имеющийся .vimrc – использовать их нельзя (во всяком случае, они не заработали). Поскольку php-cli недоступен, вместо алиаса
    alias composer=»/usr/php/54/bin/php54-cli

    /bin/composer.phar»
    писала

    alias composer=»

    /composer.phar»
    Не помогло. На команду composer получила
    -bash: composer: command not found
    Переподключение по ssh не помогло.
    Подскажите, что можно еще попробовать? (техподдержка хоста молчит).

    Там в мануале старая версия, она без композера ставится, но к ней нужно ещё отдельно console table скачать. И кстати не факт, что на дешёвый хостинг поставится компоузер. Во всяком случае мне это не удалось

    Для танцев с бубном пробовала composer.phar (с getcomposer.org) разместить в домашней папке вручную через ftp.
    -bash: composer: command not found

    Отсутствуют .bash_profile, или .bashrc, или .cshrc (но есть некий .vimrc)

    источник

    Drupal Русскоязычное сообщество

    Всем доброго времени суток.

    Так как ни как не могу самостоятельно справится с проблемой страницы конфигурации, и получив, не понятные пока для меня ответы на мою просьбу о помощи, решил по совету хороших людей установить drush.

    В принципе, наверно, для более менее продвинутого веб мастера, установка Drush на TimeWeb, не окажется сложной. Но мне даже эта процедура, пока не даётся. И самой своей просьбой, прошу подсказать и проконтролировать данное действие. Ведь алгоритм установки, на любые хостинги, более менее одинаковый.

    1. Я скачал на комп все рекомендации, Composer и Drush.

    2. Подключился к серверу по SSH

    «Добавьте alias для упрощенного запуска в файл .bash_profile (.bashrc — можно, но необязательно) — этих файлов по умолчанию нет, просто создайте их в домашней директории»

    Вот и самый первый вопрос! Что это за «alias» и куда именно его нужно добавить? Где находится файл .bash_profile?

    Комментарии

    «Вот и самый первый вопрос! Что это за «alias» и куда именно его нужно добавить? Где находится файл .bash_profile?»

    На эти простейшие вопросы можно найти ответы в первых строчках поисковика

    Хотя в директории сайта и composer.json, composer.lock и composer.phar и drush.phar имеются.

    composer — это менеджер зависимостей для php
    обычный скрипт — положить его можно куда угодно,
    но чтоб обратиться по имени — месторасположение должно быть в PATH

    с drush — та же история.
    можно просто руками поставить, но в случае с 8кой — лучше для этих целей использовать composer.
    и драш будет лежать в vendor — вызвать его или по полному пути, либо vendor в PATH

    Установить тот-же composer https://getcomposer.org/doc/00-intro.md
    но если с linux нет опыта — эта несложная операция может сделать нервы

    Камрады!
    Для ТС нужна поддержка и небольшой ликбез по bash, drush, drupal console, composer,
    В формате комментов форума это сложновато будет,
    кто не занят — помогите человеку!

    доброе дело + копеечка = все довольны

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

    Если шаред, просто переезжайте на https://dh.it-patrol.ru/ там стоит Drush

    месторасположение должно быть в PATH

    Отлично) А где это место, PATH? В Файловом Менеджере не нашёл его. Надо создать?

    это переменная окружения, в консоли можно глянуть какие есть
    env

    и непосредственно, что в PATH
    $PATH

    можно добавить туда свой, например в

    /.bashrc:
    export PATH= «$HOME/.composer/vendor/bin:$PATH»

    но, повторюсь, вам нужен небольшой ликбез с линуксоидом — чтоб объяснил базовые вещи,
    в формате комментов — сложно будет.

    тогда будет проще читать доки и руководства.

    или как минимум — этот курс пройти, он бесплатный и простой, лишним не будет имхо
    https://ru.hexlet.io/courses/bash

    $ env
    XDG_SESSION_ >46760
    TERM=xterm-256color
    SHELL= / bin / bash
    SSH_CLIENT=92.53.116.153 44368 22
    SSH_TTY= / dev / pts / 1
    LC_ALL=en_US.UTF- 8
    USER=cn35088
    MAIL = / var / mail / cn35088
    PATH= / usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / sbin: / bin: / usr / games: / usr / local / games
    PWD= / home / c / cn35088
    LANG=en_US.UTF- 8
    SHLVL= 1
    HOME= / home / c / cn35088
    LOGNAME=cn35088
    SSH_CONNECTION=92.53.116.153 44368 92.53.96.132 22
    XDG_RUNTIME_DIR= / run / user / 6372
    HISTTIMEFORMAT= % h % d % H: % M: % S
    _ = / usr / bin / env

    Если вы ставите на шаред хостинге, то в первую очередь надо иметь в виду, что 90% вероятности, что ничего не выйдет.

    я сразу вспомнил одну философшу — Шапокляк ))) и клип ЗОЖ

    Вредные советы.
    Попробуйте подключится по ssh и вбить любую комманду драша. Т.к. драш не установлен, вам подскажет команду для его установки. Чето там через sudo. Если по ssh подключится не удается, то зачем вам Драш?

    да в том то и дело, что по SSH подключиться удаётся. И на любую команду, пишет что Драш не установлен — установите Драш. Всё))

    а строчку для установки Драша через Судо не подсказывает.
    п.с. я блондинчик но у меня — подсказывает. не знаю что для этого на хостинге должно быть.

    $ composer
    No command ‘composer’ found, did you mean:
    Command ‘compose’ from package ‘mime-support’ ( main )
    composer: command not found

    а где тут команда Драш? у меня они вида
    drush updb

    слово команда (с 2мя м) не пропускает наш любимый антимат-фильтр.браво.

    / SRC $ [ ] wget https: //getcomposer.org/download/1.5.2/composer.phar
    — 2017 -09- 16 09: 20 : 18 — https: //getcomposer.org/download/1.5.2/composer.phar
    Распознаётся getcomposer.org ( getcomposer.org ) . 87.98.253.108, 2001 :41d0:a:7b19:: 2
    Подключение к getcomposer.org ( getcomposer.org ) | 87.98.253.108 | : 443 . соединение установлено.
    HTTP-запрос отправлен. Ожидание ответа. 200 OK
    Длина: 1852323 ( 1 ,8M ) [ application / octet-stream ]
    Сохранение в каталог: ««composer.phar»».

    2017 -09- 16 09: 20 : 19 ( 2 , 62 MB / s ) — «composer.phar» сохранён [ 1852323 / 1852323 ]

    / SRC $ [ ] ll
    итого 1820
    drwxr-xr-x 2 devel devel 4096 Сен 16 09: 20 . /
    drwxr-xr-x 96 devel devel 4096 Сен 16 09: 20 .. /
    -rw-r—r— 1 devel devel 1852323 Сен 11 17 : 59 composer.phar
    devel @ comp

    / SRC $ [ ] chmod +x composer.phar
    devel @ comp

    / SRC $ [ ] . / composer.phar
    ______
    / ____ / ___ ____ ___ ____ ____ ________ _____
    / / / __ \ / __ `__ \ / __ \ / __ \ / ___ / _ \ / ___ /
    / / ___ / / _ / / / / / / / / _ / / / _ / ( __ ) __ / /
    \____ / \____ / _ / / _ / / _ / .___ / \____ / ____ / \___ / _ /
    / _ /
    Composer version 1.5.2 2017 -09- 11 16 : 59 : 25

    Usage:
    command [ options ] [ arguments ]

    Options:
    -h, —help Display this help message
    -q, —quiet Do not output any message
    -V, — version Display this application version
    —ansi Force ANSI output
    —no-ansi Disable ANSI output
    -n, —no-interaction Do not ask any interactive question
    —profile Display timing and memory usage information
    —no-plugins Whether to disable plugins.
    -d, —working- dir =WORKING- DIR If specified, use the given directory as working directory.
    -v | vv | vvv, —verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

    Available commands:
    about Shows the short information about Composer.
    archive Creates an archive of this composer package.
    browse Opens the package ‘s repository URL or homepage in your browser.
    clear-cache Clears composer’ s internal package cache.
    clearcache Clears composer ‘s internal package cache.
    config Sets config options.
    create-project Creates new project from a package into given directory.
    depends Shows which packages cause the given package to be installed.
    diagnose Diagnoses the system to identify common errors.
    dump-autoload Dumps the autoloader.
    dumpautoload Dumps the autoloader.
    exec Executes a vendored binary/script.
    global Allows running commands in the global composer dir ($COMPOSER_HOME).
    help Displays help for a command
    home Opens the package’ s repository URL or homepage in your browser.
    info Shows information about packages.
    init Creates a basic composer.json file in current directory.
    install Installs the project dependencies from the composer.lock file if present, or falls back on the composer.json.
    licenses Shows information about licenses of dependencies.
    list Lists commands
    outdated Shows a list of installed packages that have updates available, including their latest version .
    prohibits Shows which packages prevent the given package from being installed.
    remove Removes a package from the require or require-dev.
    require Adds required packages to your composer.json and installs them.
    run-script Runs the scripts defined in composer.json.
    search Searches for packages.
    self-update Updates composer.phar to the latest version .
    selfupdate Updates composer.phar to the latest version .
    show Shows information about packages.
    status Shows a list of locally modified packages.
    suggests Shows package suggestions.
    update Upgrades your dependencies to the latest version according to composer.json, and updates the composer.lock file .
    upgrade Upgrades your dependencies to the latest version according to composer.json, and updates the composer.lock file .
    validate Validates a composer.json and composer.lock.
    why Shows which packages cause the given package to be installed.
    why-not Shows which packages prevent the given package from being installed.
    devel @ comp

    @VasyOK ну какое sudo у пользователя на шаред хостинге то..

    источник