Борьба с Composer на Open Server

Аватар пользователя VasyOK VasyOK 18 августа в 2:17

Пытаюсь установить Drupal на Open Server с Composer.

1. Запускаю консоль Open Server-а, перехожу в папку нового сайта
cd c:\openservinst\OSPanel\domains\d8.my\

2. Руководствуясь инструкцией https://niklan.net/blog/185
composer create-project drupal-composer/drupal-project:8.x-dev some-dir --stability dev --no-interaction
Доооолго думает (почему?), потом начинает грузить.

3. потом
cp -r some-dir/. ./ && rm -rf some-dir/
Выдает:
"cp" не является внутренней или внешней командой, исполняемой программой или пакетным файлом.
Тоже почему?
Если я правильно понял код выше переносит файлы из временной папки в папку сайта. Раз не работает - вырезать-вставить.

4. Пытаюсь зайти на сайт по урлу d8.my - нефига. Естственно т.к. Drupal установлен в папку web.
Меняю в настройках OpenServer папку домена на d8.my/web

5. По урлу устанавливаю Drupal. Вроде устновился.

0 Thanks

Лучший ответ

Комментарии

Аватар пользователя VasyOK VasyOK 18 августа в 3:11

Устанавливаю Commerce
Ввожу
composer require 'drupal/commerce:^2.13'
мне выдает:

  [UnexpectedValueException]
  Could not parse version constraint 2.13': Invalid version string "2.13'"

require [--dev] [--prefer-source] [--prefer-dist] [--no-progress] [--no-suggest] [--no-update] [--no-scripts] [--update-no-dev] [--update-with-dependencies] [--ignore-platform-reqs] [--prefer-stable] [--prefer-lowest] [--sort-packages] [-o|--optimize-autoloader] [-a|--classmap-authoritative] [--apcu-autoloader] [--] [<packages>]...

что делать?

Аватар пользователя Semantics Semantics 18 августа в 5:02

1. Забыть про винду для веб-разработки
2. С какого варезника ты качал композер? Какая версия?

Аватар пользователя voviko voviko 18 августа в 6:31

Как то, в давние времена, я пытался на OpenServer требовалось пересохранять много нод, и помногу раз. Очень долго ждать однако. Что я только не делал, и raid и ssd отдельный (дорогие тогда были). А потом воткнул virtualbox + debian, и был приятно удивлен результатом.

Аватар пользователя ivnish ivnish 18 августа в 7:22

Потому что cp это линуксовая утилита и в винде её конечно же нет. Не нужно бездумно вводить всё подряд в терминал

И да, я согласен с Виктором, что винда это не про веб разработку.

Аватар пользователя Orion76 Orion76 18 августа в 11:45

Проще поставить убунту-сервер на VirtualBox: https://www.osboxes.org/ubuntu-server/
установить на него LEMP( Nginx, PHP-FPM,Mysql) или LAMP(если нужен Apache вместо Nginx)
https://www.digitalocean.com/community/tutorials/linux-nginx-mysql-php-l...

Сразу доустановить composer, drush, drupal-console, phpmyadmin и т.п. и заныкать чистенький образ.
Далее просто для каждого "нового" проекта, копируем из нычки образ, запускаем его в VM, устанавливаем Drupal и пользуемся.
Да.. папку с друпал надо "пробросить" на хост-машину(основную ОС компа) и открывать проект в привычной IDE из маздая Windows.

Когда пальцы и голова привыкнут к Linux, устанавливаем второй системой на комп Xubuntu или Mint.
Так же устанавливаем окружение web-сервера и разработки(LEMP-LAMP composer и т.п.) и живем дальше, не паримся-)

Аватар пользователя ivnish ivnish 18 августа в 12:07

docker4drupal же)

У виртуальной коробки большие потери по производительности дисковой подсистемы

Аватар пользователя Orion76 Orion76 18 августа в 12:21

Это понятно, хотя на достаточно производительном компе, потери производительности будут мало заметны .

И резкий переход с windows на docker не каждый потянет.

Тем более, я слышал в windows с докером не все та просто.

А так (в VirtualBox) есть возможность постепенно, не вылезая из привычного комфортного окружения (Windows) привыкнуть к "непривычному" для пользователя, но "родному" для web-разработки-)

Аватар пользователя Orion76 Orion76 18 августа в 12:47

кстати, если на компе имеется SSD-диск и "общую папку" организовать на нем, то это должно компенсировать "просадки" производительности файловой системы.

А вообще, что OpenServer что VirtualBox - позапрошлый век.
Вэб-сервер можно поднять на любом, достаточно производительном андроид-устройстве.
Просто установив на него тот же nginx,php,mysql (оказывается так можно, до недавнего времени не знал-)
В идеале конечно было бы лучше поднять на нем какой нибудь Linux для ARM-процессоров, но читал, вроде пока не все так просто.

Аватар пользователя Orion76 Orion76 18 августа в 21:05

Это надо еще роутер покупать..-)
А мне родственники натащили целую стопку рабочих смартофонов с раздолбанными экранами.(тыжпрограммист, тебе надо-)
Руки дойдут, попробую сделать "карманный" вэб-сервер для работы в т.ч. в "походных условиях"+ вайфай роутер с "мобильным" интернетом.

Аватар пользователя VasyOK VasyOK 19 августа в 13:10

Друзья, спасибо, я понял. Open Server для Композера пока не годится.
А эта комманда работать должна?
composer require 'drupal/commerce:^2.13'

Аватар пользователя fozzy fozzy 19 августа в 16:16

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

Аватар пользователя zvendelo zvendelo 19 августа в 13:34

Я пробовал делать окружение Cygwin и юзать это всё - фиксил, фиксил, фиксил - в итоге сам запутался и плюнул - реально проще поднять виртуалку с докером(только не пробуйте докер в винде - это ещё хуже чем композёр в оспанеле) или вообще уехать на линукс - рекомендую арч - у него вики актуальная, в отличии от устарелых рецептов убунты.

Аватар пользователя bumble bumble 19 августа в 13:55
2

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

Не ищи новую отмазку! Разберись!

Аватар пользователя ivnish ivnish 19 августа в 14:37

Я полгода назад чисто в исследовательских целях ставил на OpenServer composer, а им уже ставил drush. Всё там работает, хоть и не так удобно как в линуксе

Аватар пользователя gun_dose gun_dose 19 августа в 14:12

Года три назад задавал подобный вопрос на этом форуме и очень много людей говорили, что всё прекрасно работает именно под опенсервером. И где эти люди теперь?))

Аватар пользователя VasyOK VasyOK 20 августа в 16:48

Спасибо. Посмотрю.
Да, все таки команды композера по устновке модулей я вводил правильно. В нормальном окруджнеии они у меня работали. Под Композером в Винде - пока нет :(
Буду разбираться.

Аватар пользователя zvendelo zvendelo 21 августа в 11:49

Я думаю не разберёшься - там не устанавливаются некоторые пакеты, и есть подозрение что в этих пакетах юзаются какие то дополнительные скрипты инициализации или просто прописаны абсолютные пути, которые юзают стиль написания путей в linux(как известно разделитель имён в винде и линуксе отличается)

Для решения данной проблемы я как раз и прикручивал окружений Cygwin - после чего воз двигался до следующей кочки... В общем они бесконечны - проще изучить линукс, тем более сейчас есть ютуб и виртуалбокс.

Сам долго упирался переходить\не переходить на linux - но в итоге немного времени и теперь я понимаю, что в линукс всё намного проще, вещи которые созданы под него просто работают, а если багают - то понятно что баг, и не надо гадать - а не win виновата со своими особенностями с опенсервером... можно сразу лить в багтрек.

В общем не трать время на решение проблемы "воза", юзай просто инструменты в том окружении, для которых они делались.

По сути тебе надо любой линукс, сам докер в них ставится как правило парой команд

А дальше установить docker4drupal по инструкции https://niklan.net/blog/172 не особо сложно. Изменения кое какие есть - но принцип понять не сложно, есть канал в телеграмме - можно оперативно спросить, есть каналы в мессенджерах по linux где тоже можно оперативно спросить нужные вещи, тем более сейчас тема докера популярна.

Аватар пользователя Orion76 Orion76 21 августа в 7:31
1

Если Вы про видео-инструкцию, то чего-то там наворочено всего подряд(pyton, gulp и т.п.), наверное чтобы былО или автор использует какие-то дополнительные инструменты для работы.

Грубо говоря, что composer что drush - это php-скрипты.

т.е. чтобы их запустить нужен php для консоли (php-cli, обычно устанавливается вместе с php)

Для этого достаточно просто выполнить команду:
путь-к-php/php.exe путь-к-composer/composer.phar
или
путь-к-php/php.exe путь-к-drush/drush.php

чтобы в процессе работы не вводить такие длинные команды с указанием путей, необходим какой нибудь лончер, наверное в windows для этого используются bat-файлы или ярлыки, в которых прописана нужная команда и которые передадут ей параметры запуска.

А чтобы при вводе в консоли, например composer, операционная система знала, где искать запускающий его файл(лончер), путь к папке , в которой находится этот файл добавляют в переменную окружения PATH.
Или сам лончер ложат в папку, которая уже указана в данной переменной.

автоматические установщики обычно делают именно это.

Аватар пользователя zvendelo zvendelo 21 августа в 11:23

Composer — это пакетный менеджер уровня приложений для языка программирования PHP, который предоставляет средства по управлению зависимостями в PHP-приложении.

Зачем бы ему тянуть питона и нод, если он PHP:)

Аватар пользователя VasyOK VasyOK 21 августа в 13:29

Хорошо, но gulp от node.js зависит?
Без node.js не выполняется команда:
npm install --global gulp

Аватар пользователя Mnilionic Mnilionic 22 августа в 2:07

Я ставил композер на win7 вместе с опенсервером. Ставил по инструкции с сайта композера https://getcomposer.org/doc/00-intro.md#installation-windows
Я впервые ставил композер, чтоб впервые потискать ларавал. Поставилось без проблем, ларавел установился, зависимости подтянулись... потискал.
И вот уж год прошёл ))

Аватар пользователя VasyOK VasyOK 22 августа в 12:52

Да, вполне возможно что я Композер неправильно поставил. Хотя мне очень понравился вариант, который я вынес в решение. Всем добра!