Быстрая среда web-разработки на основе vagrant, возможно?
Хочу себе настроить окружение для разработки на основе нормального lemp стэка под linux и уйти с openserver, но не хочу уходить с windows.
Увидел в сети что многие настраивают окружения через vagrant, монтирую папку с проектами из windows в linux системе - но если делать это всё через virtual box то получается что работает очень медленно всё и связано это из-за файловой системы самого virtual box, есть плагин который ускоряет это всё дело - но ситуация значительно лучше не становится. Собственно вопрос: а если использовать vmware будут ли такие же проблемы со скоростью функционирования системы и т.д?
PS - мне нужно именно чтобы папка с проектом была в windows, поэтому работать через sftp с проектом для меня не решение.
Артем, да о docker задумывался.
Но из-за того что я с ним не работал, и в принципе туповат и мне сложно что-то осваивать... я его не рассматривал, так как на сколько знаю на windows он используется ту же виртуализацию ядра linux через virtual box, что по моей логике не очень то отличается от виртуалки в вагранте )
Кирилл, докер в вебе сейчас везде, так что если до сих пор его не изучал - уже прям 100% пора. Уже какое-то время - пора. P.S. Да и в принципе, зачем сидеть на винде для веб-разработки? Не проще целиком в линукс переехать?
Валентин, Меня нельзя назвать профессиональным разработчиком так как пока что мой уровень это сайтики на WP или Modx, техническая поддержка и т.д, и практически каждый день мне приходится использовать тот же фотошоп и корел и т.д
Быстро и безбоязненно перескочить на Linux я не могу, потому что система просто генерирует проблемы, проблемы с железом, дравами, и т.д, тиринг тот же самый, и ещё куча мелочей которые меня раздражают в linux.
Я хочу работать в операционной системе, а не решать её проблемы :)
Возможно когда я стану более опытным и меня можно будет назвать джуном хоть в какой-то сфере, и мне не надо будет ничего делать кроме как заниматься разработкой, тогда я пересяду на linux.
PS - пытался поставить себе докер, но ничего не получилось потому что у меня мало ОЗУ (4G), если докеру реально надо больше, то мне пока что не судьба его использовать, тк - на работе увеличивать ОЗУ мне не будут, ибо даже рабочий ПК - мой личный.
Кирилл, сейчас на DDR4 походу минимальный на ближайшее время ценник - самое время купить хотя бы 16, а лучше 32Гб оперативки про запас и этим решить проблему кардинально ;)
Я хочу работать в операционной системе, а не решать её проблемы
Это просто потому, что к проблемам винды ты привык и знаешь как их решать. Т.е. ты все равно 1 раз в жизни этот путь прошел (и, в какой-то степени, скорее всего проходишь до сих пор). Так что чем раньше начнешь этот же путь по линуксу - тем быстрее его пройдешь ;)
Валентин, На счёт переучивания системы и перехода — согласен, но всё не как не могу начать, да что-то знаю в линухе, но перейти уже года 3 как не могу. :)
А вот ОЗУ купил бы себе если бы были деньги, но их нет :(
Кирилл, а в чем проблема? Включил комп, скачал и установил. И вот уже обратной дороги нет. А дальше "блин, надо это сделать" - загуглил, разобрался, сделал. Ни у кого нет времени просто так сидеть и что-то изучать, сталкиваешся с проблемами - решаешь их.
Мне часто приходится переключаться между двумя проектами с разным окружением - делается за 10-20 секунд. Не представляю сколько времени этот процесс занимал, если всё было на вагранте.
Ровно столько же.
Под Windows что Докер, что Вагрант эмулируют Линукс-окружение с обязательным использованием виртуальной машины.
Не столько же, Docker работает на фоне vagrant(а) молниеносно. Может именно у Вас так? Причин может быть много.
Молниеносно - только под Linux, так как изначально это средство построено на базе контейнеров в Linux, а не на базе виртуальных машин.
Если у вас под Windows и прямо-таки летает Докер, то в Докер у вас стоят драйвера гостевой машины, а в Вагранте - не стоят.
Дело в том, что под Виндой это почти одинаковые вещи, отличающиеся только способом конфигурирования.
Ну и особенностями запуска init. Вагрант целиком смысла нет останавливать. Если вам нужно переконфигурировать ПО внутри Вагранта - просто перезапустите это ПО.
Алишер E., причина проста. Вагрант поднимает ОСь целиком, а докер один раз запускает виртуалку с минимальным линуксом, а уже в ней контейнеры. Затраты на запуск контейнеров ничтожные, и легкая виртуалка запускается только один раз.
Ребят, а Вы не думали что можно на одном образе вагранта установить проброшенную шару с винды, где лежат все проекты, а пакеты можно поставить на сам линукс (в том числе и разные версии одновременно) и использовать одну виртуалку и переключаться уже будет не нужно. Я понимаю, что иногда нужны специфические взаимоисключающие условия, но уверен, что в большинстве случаев это далеко не так и в случае типичной разработки вариант с одной виртуалкой самый очевидный выбор
Roman Kitaev, Вас, а не тебя, и я не спорил про скорость докера или вагранта, я привёл как пример, ибо что докер, что вагрант очень многие запускают по одному на каждый проект, а не один на все. Кроме этого, я описал работу поголовного количества оркестраторов и вряд ли они быстрее меня это запускают, переход на личности, такой себе аргумент, обычно говорящий о том, что сказать нечего
Konstantin Abaiev, а зачем тут вообще вагрант? это инструмент для автоматизации разворачивания виртуалок по заданным требованиям. Конечно логичнее запускать универсальную, нормально настроенную виртуалку.
Ну и потом следующий шаг, зачем вам вообще виртуалка и винда.
Антон, виртуалка и винда лично мне нужны, по той простой причине, что я не программист, хотя и занимаюсь этим время от времени и винда - это основная рабочая система. По поводу вагранта, это у меня дело привычки, когда-то для себя открывал вот это + создание новых образов одной командой (для развертывания на новом рабочем месте). Это уже сейчас не нужен вагрант, т.к. собрать могу образ и без всего остального, но когда-то очень пригодилось.
Вы ведь наверное в курсе про хайп пихать докер куда надо и куда не надо, который до сих пор не прекращается + в многих php фреймворках то вагрант, то хоумстед, то еще что-то и я лично знаю, что многие так и разворачивают образы для каждого проекта отдельные, потому что просто не умеют, не знают (не догадались) как настроить веб-сервер под проекты. Вот как раз к ним я и обращался.
А так, я с Вами полностью согласен, нормальная разработка под веб - это линукс без посредников
Paul Denisevich, нет очевидного способа это сделать. Я подразумеваю проецирование случайной директории Windows-хоста внутрь linux-контейнера (volume).
Причина тому - linux-контейнеры крутятся под виртуальной машиной (virtualbox), поэтому залезть в их память непросто в сравнении с linux-хостом. В интернетах у меня не получилось найти ничего, кроме костылей, вроде NFS и нытья по поводу того, что это не работает. Если кто-то подскажет хотя бы направление - буду крайне признателен.
I like Python, Node.JS, Go, pain, bugs and my cat.
Используйте WSL если у вас Windows 10
Скорость на уровне системы и не нужено ничего подключать (папки и т.п.) + более гибкое решение с возможностью настроить как угодно и чем угодно.
но если делать это всё через virtual box то получается что работает очень медленно всё и связано это из-за файловой системы самого virtual box, есть плагин который ускоряет это всё дело - но ситуация значительно лучше не становится
Это называется не плагин, а драйвер.
После установки драйверов внутрь гостевой ОС (и попробовать варианты, скорее всего в режиме паравиртуализации будет лучше) - все летает.
Конечно, если у вас достаточно оперативной памяти.
mamokino Docker для винды всё равно лучше чем WSL. В WSL никакой изоляции. Туда всё равно надо ставить зоопарк ПО.
WSL / Homestead / LEMP на линуксе / OpenServer на винде — это всё прошлый век. Считаю, что в 2019, независимо от того, на какой ОС сидишь, то кроме Docker, git и IDE на хост ничего больше ставить не нужно.
В WSL никакой изоляции. Туда всё равно надо ставить зоопарк ПО.
WSL позволяет организовать не то, чтобы изолированную среду, нет. А даже и совершенно независимые среды хоть под каждый проект.
Это штатный функционал. Но доступный только из командной строки. Тому, кто не осилил ничего, кроме GUI, можно посоветовать просто поставить из "Магазина Windows" разные версии Linux. У вас будет столько сред, сколько видов Linux вы поставите.
Тот же, кто осилил командную строку, может легко поставить столько независимых сред Linux - сколько ему заблагорассудится.
Пытался настроить Vagrant на работе, в итоге плюнул на все, поставил на виртуалку убунту сервер чистую, поставил то что мне нужно и норм, файлы закидываю по SFTP.
А вообще нужно писать так, чтобы код завелся и на линукс и на виндовс (главное соблюдать регистр в путях)))).
WSL который тут советовали нафиг не нужен - это какой-то обрезок.
Я себе поставил VMWare Workstation 15 (можно бесплатно пользоваться) оно работает сильно быстрее чем Virtualbox.
В VMWare только одна мелочная проблема есть, без лишнего ковыряния статический нужный тебе IP не присвоишь.
Т.е. если VMWare присвоил твоей виртуалке какой-нибудь 192.168.111.100, то его и придется его использовать.
Либо можешь купить эту Workstation и там уже будут нормальные средства для управления dhcp.
Кстати у меня докер в виртуалке стоит (считай виртуалка в виртуалке), так всё работает без тормозов и нареканий