Я активно использую WSL для запуска разных приложений(например virt-manager, mosh и.т.п.). Там довольно много проблем, довольно плохо с производительностью, и для разработки, как мне кажется, она мало подходит.
Хотя WSL2, вероятно будет лучше.
Собственно, и сейчас лучше запустить в hyper-v, или с помощью какого-нибудь другого гипервизора полноценный линукс, как это будет делаться в WSL2.
А что именно не понятно? WSL это Windows subsystem for linux, она же "подсистема Ubuntu для Windows", точнее там можно один из нескольких дистрибутивов поставить, не только ubuntu. Так что это и было то самое мнение использующего.
А зачем для этого wsl? Собственно сам-то докер в нём не запускается - нужна виртуализация всё равно. А если какой-нибудь docker-desktop, то в нём уже есть всё нужное, в частности compose и wsl там не нужен.
Вероятно в wsl2 docker уже будет работать нормально.
Я хз вообще))) в 2016 на седьмой винде docker-compose не было возможности запустить, говорили, что надо десятка профессиональная и там в этой линуксовой подсистеме всё работает. С тех пор винды у меня не было, но в последнее время думаю купить ноут, но от линуксов тошнит, а на мак жаба душит.
Там не wsl нужен, а hyper-v для запуска современного варианта docker-desktop. Именно он есть в 10pro.
Для запуска докера создаётся виртуалка под linux на самом деле. А docker-desktop это набор инструментария, чтобы пользователю не надо было об этом думать.
Почитал комментарии. Делаю вывод, что вы не понимаете как работать с WSL 1 и WSL 2 - это совершенно разные подходы. Я работаю с WSL 1 + OpenServer - уже более года, отлично! WSL 2 - пока не перехожу, т.к. нужно все окружение сервера держать внутри WSL 2. Если у кого то низкая скорость работы с файлами с WSL 2 (Например, composer update) - знайте это не проблема, это особенность работы файловой подсистемы WSL 2, т.к. при ее использовании в отличие от WSL 1 нужно все хранить внутри виртуальной машины.
filinkov.ru wrote: Делаю вывод, что вы не понимаете как работать с WSL 1 и WSL 2
Очень интересный вывод. Что именно, и кто не понимает?
filinkov.ru wrote: Я работаю с WSL 1 + OpenServer
И зачем в этой связке вообще WSL 1? Ваше окружение(OpenServer) и так полноценно работает в windows там уже есть php-cli, можно также запустить composer и.т.п. Даже python поставить нужный как в списке в видео, если он вдруг зачем-то нужен...
И рядом зачем-то поднимается второе окружение в WSL, которое будет работать не лучше.
Это просто мнение, могу ошибаться. Не увидел комплексного ответа и выводов.
Зачем в этой связке WSL 1? Затем, что на windows кроме WSL и OpenServer больше ничего не устанавливается, чтобы работало окружение для разработки. Все процессы идут внутри WSL (drush, composer, git, nodejs и т.п.). Все настраивается как на Ubuntu без проблем и без костылей. Плюс отличная интеграция с VSCode.
У VSCode интеграция с WSL, а не с OpenServer. Отлично работает bash, достаточно высокая скорость работы с файловой системой виндовс и WSL 1. WSL 2 не предназначена для прямого обмена с файловой системой виндовс.
Пользователь виндовс может и привык к другому, а разработчик использует то, что предлагает ему майкрософт. А это WSL. О каком другом подходе можно говорить, если всё пришло с линукса. Сейчас нет необходимости устанавливать любые средства разработки (drush, composer, git, nodejs и т.п.) в виндовс, когда можно запустить все это в изолированной среде и их установка никак не будет влиять на работу основной операционной системы. Это же очевидно. Никаких виртуальных машин. Docker полноценно работает с WSL 2. Да ему по прежнему требуется гипервизор, но это уже другая история.
Плюс настройка всех компонентов для разработки аналогична настройке на линуксе, и даже в WSL 1.
Я многие годы сопротивлялся линуксу, но теперь благодаря именно WSL я его осваиваю. И работа на серверах теперь не вызывает страха. У меня абсолютно чистая десятка, но при этом я полноценно могу разрабатывать как на линуксе в его окружении. В этом прелесть. Как ни крути, но рано или поздно любому разработчику придется изучать линукс, сейчас это проще, благодаря WSL.
Я считаю этот подход правильным и точка. Прогресс развития средств разработки привел нас к этому. Будущее за еще большей интеграцией виндовс и линукс. Это уже не изменить и надо приспосабливаться.
Может не очень понятно о чём я выше пишу? Попробую описать подробнее:
Я вполне могу понять, когда пользуются для разработки под windows openserver. Мы имеем готовое окружение и немного довольно удобной автоматизации. Да, окружение не то же, что будет на сервере, и бывают в сложных случаях несоответствия, но это редкость. Работает всё быстро. Почти также, как работало бы на той же машине под Linux, в общем-то. Ну по крайней мере нет лишних накладных расходов.
Я могу понять тех, кто запускает виртуалку с linux и настраивает окружение там: это нативное окружение есть много ide которые с этим умеют работать и накладные расходы хоть и есть, но не велики. На мой взгляд, это оптимальный вариант, но нужны минимальные знания в администрировании, конечно.
Я даже могу понять тех, кто устанавливает docker-desktop. Хотя сам не очень люблю Docker, а точнее совершенно бездумное использование сторонних образов.
Но в WSL 1, и не нативное окружение, и накладные расходы не меньше чем в виртуалке за счёт трансляции системных вызовов - это как паравиртуализация получается фактически, и на грабли проще наступить, т.к. оно совсем не всегда ведёт себя как ubuntu, или что вы себе ставите. Тут есть все минусы, и нет плюсов. Это самый странный выбор, и вдвойне странный, если в паре с уже установленным Openserver.
filinkov.ru wrote: Сейчас нет необходимости устанавливать любые средства разработки (drush, composer, git, nodejs и т.п.) в виндовс, когда можно запустить все это в изолированной среде и их установка никак не будет влиять на работу основной операционной системы.
Перечисленное вами не будет и так влиять на работу основной операционной системы, даже если всё это туда установить.
filinkov.ru wrote: Как ни крути, но рано или поздно любому разработчику придется изучать линукс
Хорошо бы они хотя бы ближайшее окружение бы изучили... И то мечты. Многие системы прав доступа к файлам не понимают.
Перешел с OpenServer на Docker + WSL2. Тут ключевое, хранить все проекты в файловой системе линукса, который крутится в WSL2. Тогда все летать будет. Для себя отметил следующие плюсы:
1. Скорость работы сайта стала выше. Для примера, у мадженты есть команда пересборки статики, так вот, используя openserver время ее выполнения было 4-4,5 минуты. В докере 1-1,5 минуты. Про друпал сайты вообще молчу, мгновенно открываются.
2. Так как WSL2 это по сути виртуалка и в ней установлен полноценный линукс, то это заставляет осваивать линукс по тихоньку. Потом становится проще работать на серверах.
3. Работа с конфигами ngnix, apache. Если в openservr домен заводится автоматом, то тут надо сконфигурировать ngnix и/или apache. Это большой плюс, сразу приходит хорошее понимание по работе с конфигами.
4. Я могу сам решать, как расположить сайты в папке с проектами. В openserver все сайты в одной кучи. Когда проектов больше 40, то не очень приятно выискивать нужный. В WSL2 я могу удобным мне образом расположить папки с сайтами. Например, у одного клиента 3 сайта. Такие сайты я располагаю в одной общей папке. Либо другой пример, когда сайт многоязычный, бывает нужно под каждую локаль создать домен.
5. Можно настроить любое окружение. Сейчас у меня в docker крутится такие контейнеры:
php - 5.6, 7.2, 7.4, 8.1
MySQL - 5.7, 8.0.19, 8.0.30
elasticsearch - 6.6.2
ngnix и phpmyadmin
6. Интеграция с VSCode.
7. Доступ к файлам в WSL2 интегрирован в проводник винды,
Из минусов могу отметить, правда не считаю их существенными:
1. Потребовалось докупить оперативы для компа, сейчас 64 гб установлено. Хватает за глаза. В пиках потребление до 54 гб доходит.
2. Приходится делать бекап всей виртуалки, сейчас она весит 108 Гб. Раньше просто папки с проектами раз в сутки по ночам бекапились. Программа для бекапа не трогала файлы, которые не изменялись.
Комментарии
У нас некоторые польские коллеги так работают. Скорость работы просто отвратительная. Нативно намного быстрее
Я активно использую WSL для запуска разных приложений(например virt-manager, mosh и.т.п.). Там довольно много проблем, довольно плохо с производительностью, и для разработки, как мне кажется, она мало подходит.
Хотя WSL2, вероятно будет лучше.
Собственно, и сейчас лучше запустить в hyper-v, или с помощью какого-нибудь другого гипервизора полноценный линукс, как это будет делаться в WSL2.
Борис, ах если бы я вас понимал
Все таки хотелось бы услышать мнение, кто пользуется сабжем.
А что именно не понятно? WSL это Windows subsystem for linux, она же "подсистема Ubuntu для Windows", точнее там можно один из нескольких дистрибутивов поставить, не только ubuntu. Так что это и было то самое мнение использующего.
хератень. и так ошибки лезут так вы хотите их умножить только.
использую virtualbox и нативную установку.
Там реально всё так плохо? Всего-то нужно dcoker-compose запустить, неужели и с этим проблемы?
А зачем для этого wsl? Собственно сам-то докер в нём не запускается - нужна виртуализация всё равно. А если какой-нибудь docker-desktop, то в нём уже есть всё нужное, в частности compose и wsl там не нужен.
Вероятно в wsl2 docker уже будет работать нормально.
Я хз вообще))) в 2016 на седьмой винде docker-compose не было возможности запустить, говорили, что надо десятка профессиональная и там в этой линуксовой подсистеме всё работает. С тех пор винды у меня не было, но в последнее время думаю купить ноут, но от линуксов тошнит, а на мак жаба душит.
Там не wsl нужен, а hyper-v для запуска современного варианта docker-desktop. Именно он есть в 10pro.
Для запуска докера создаётся виртуалка под linux на самом деле. А docker-desktop это набор инструментария, чтобы пользователю не надо было об этом думать.
аналогично, с тех пор у мну линуксов не было))
работать комфортно и под виндой, без VB, ну может на крайний случай... на очень крайний
Чето не понял. А на чем ты разрабатываешь тогда? На Айпаде?
На маке разрабатываю. Просто он не мой, а рабочий.
Почитал комментарии. Делаю вывод, что вы не понимаете как работать с WSL 1 и WSL 2 - это совершенно разные подходы. Я работаю с WSL 1 + OpenServer - уже более года, отлично! WSL 2 - пока не перехожу, т.к. нужно все окружение сервера держать внутри WSL 2. Если у кого то низкая скорость работы с файлами с WSL 2 (Например, composer update) - знайте это не проблема, это особенность работы файловой подсистемы WSL 2, т.к. при ее использовании в отличие от WSL 1 нужно все хранить внутри виртуальной машины.
Посмотри мое видео по настройке и использованию WSL 1 https://www.youtube.com/watch?v=TYS389zSbAs&t=886s
За год работы я единственное что поменял - это ConEmy на Windows terminal.
Очень интересный вывод. Что именно, и кто не понимает?
И зачем в этой связке вообще WSL 1? Ваше окружение(OpenServer) и так полноценно работает в windows там уже есть php-cli, можно также запустить composer и.т.п. Даже python поставить нужный как в списке в видео, если он вдруг зачем-то нужен...
И рядом зачем-то поднимается второе окружение в WSL, которое будет работать не лучше.
Это просто мнение, могу ошибаться. Не увидел комплексного ответа и выводов.
Зачем в этой связке WSL 1? Затем, что на windows кроме WSL и OpenServer больше ничего не устанавливается, чтобы работало окружение для разработки. Все процессы идут внутри WSL (drush, composer, git, nodejs и т.п.). Все настраивается как на Ubuntu без проблем и без костылей. Плюс отличная интеграция с VSCode.
С какой целью, если всё это будет работать и без WSL? И это даже будет быстрее работать.
Чем это хорошо для пользователя windows, который очевидно привык к другому подходу?
Чем она так отлична от работы с локальным проектом под openserver?
У VSCode интеграция с WSL, а не с OpenServer. Отлично работает bash, достаточно высокая скорость работы с файловой системой виндовс и WSL 1. WSL 2 не предназначена для прямого обмена с файловой системой виндовс.
Пользователь виндовс может и привык к другому, а разработчик использует то, что предлагает ему майкрософт. А это WSL. О каком другом подходе можно говорить, если всё пришло с линукса. Сейчас нет необходимости устанавливать любые средства разработки (drush, composer, git, nodejs и т.п.) в виндовс, когда можно запустить все это в изолированной среде и их установка никак не будет влиять на работу основной операционной системы. Это же очевидно. Никаких виртуальных машин. Docker полноценно работает с WSL 2. Да ему по прежнему требуется гипервизор, но это уже другая история.
Плюс настройка всех компонентов для разработки аналогична настройке на линуксе, и даже в WSL 1.
Я многие годы сопротивлялся линуксу, но теперь благодаря именно WSL я его осваиваю. И работа на серверах теперь не вызывает страха. У меня абсолютно чистая десятка, но при этом я полноценно могу разрабатывать как на линуксе в его окружении. В этом прелесть. Как ни крути, но рано или поздно любому разработчику придется изучать линукс, сейчас это проще, благодаря WSL.
Я считаю этот подход правильным и точка. Прогресс развития средств разработки привел нас к этому. Будущее за еще большей интеграцией виндовс и линукс. Это уже не изменить и надо приспосабливаться.
Может не очень понятно о чём я выше пишу? Попробую описать подробнее:
Я вполне могу понять, когда пользуются для разработки под windows openserver. Мы имеем готовое окружение и немного довольно удобной автоматизации. Да, окружение не то же, что будет на сервере, и бывают в сложных случаях несоответствия, но это редкость. Работает всё быстро. Почти также, как работало бы на той же машине под Linux, в общем-то. Ну по крайней мере нет лишних накладных расходов.
Я могу понять тех, кто запускает виртуалку с linux и настраивает окружение там: это нативное окружение есть много ide которые с этим умеют работать и накладные расходы хоть и есть, но не велики. На мой взгляд, это оптимальный вариант, но нужны минимальные знания в администрировании, конечно.
Я даже могу понять тех, кто устанавливает docker-desktop. Хотя сам не очень люблю Docker, а точнее совершенно бездумное использование сторонних образов.
Но в WSL 1, и не нативное окружение, и накладные расходы не меньше чем в виртуалке за счёт трансляции системных вызовов - это как паравиртуализация получается фактически, и на грабли проще наступить, т.к. оно совсем не всегда ведёт себя как ubuntu, или что вы себе ставите. Тут есть все минусы, и нет плюсов. Это самый странный выбор, и вдвойне странный, если в паре с уже установленным Openserver.
Перечисленное вами не будет и так влиять на работу основной операционной системы, даже если всё это туда установить.
Хорошо бы они хотя бы ближайшее окружение бы изучили... И то мечты. Многие системы прав доступа к файлам не понимают.
Я думаю кто не в теме сам решит для себя какой подход лучше )))
Привет.
Перешел с OpenServer на Docker + WSL2. Тут ключевое, хранить все проекты в файловой системе линукса, который крутится в WSL2. Тогда все летать будет. Для себя отметил следующие плюсы:
1. Скорость работы сайта стала выше. Для примера, у мадженты есть команда пересборки статики, так вот, используя openserver время ее выполнения было 4-4,5 минуты. В докере 1-1,5 минуты. Про друпал сайты вообще молчу, мгновенно открываются.
2. Так как WSL2 это по сути виртуалка и в ней установлен полноценный линукс, то это заставляет осваивать линукс по тихоньку. Потом становится проще работать на серверах.
3. Работа с конфигами ngnix, apache. Если в openservr домен заводится автоматом, то тут надо сконфигурировать ngnix и/или apache. Это большой плюс, сразу приходит хорошее понимание по работе с конфигами.
4. Я могу сам решать, как расположить сайты в папке с проектами. В openserver все сайты в одной кучи. Когда проектов больше 40, то не очень приятно выискивать нужный. В WSL2 я могу удобным мне образом расположить папки с сайтами. Например, у одного клиента 3 сайта. Такие сайты я располагаю в одной общей папке. Либо другой пример, когда сайт многоязычный, бывает нужно под каждую локаль создать домен.
5. Можно настроить любое окружение. Сейчас у меня в docker крутится такие контейнеры:
php - 5.6, 7.2, 7.4, 8.1
MySQL - 5.7, 8.0.19, 8.0.30
elasticsearch - 6.6.2
ngnix и phpmyadmin
6. Интеграция с VSCode.
7. Доступ к файлам в WSL2 интегрирован в проводник винды,
Из минусов могу отметить, правда не считаю их существенными:
1. Потребовалось докупить оперативы для компа, сейчас 64 гб установлено. Хватает за глаза. В пиках потребление до 54 гб доходит.
2. Приходится делать бекап всей виртуалки, сейчас она весит 108 Гб. Раньше просто папки с проектами раз в сутки по ночам бекапились. Программа для бекапа не трогала файлы, которые не изменялись.
Если буду вопросы спрашивайте.
Оставил винду только для эээ... кароче стоит на компе пользуюсь иногда.