Предпочитаю Windows линуксу по множеству причин (MS Office, Adobe, игры, удобный интерфейс и т.п.). Раньше пробовал WSL, в принципе довольно рабочий способ, правда было пару недостатков: медленное I/O (где-то раза в 3), проблемы с переносом строк (/r/n - решалось конфигурацией git'a на винде), ну и возможно были бы проблемы с правами на файлы, но не столкнулся с этим.
В данный момент работаю на Ubuntu. Сталкиваюсь с разными проектами (PHP Symfony), где нужно разное окружение. В итоге начал смотреть в сторону Docker. И сразу же потянуло обратно на винду.
Подскажите пожалуйста, опытные разработчики, хорошая ли это затея?) Я так понимаю Docker позиционирует себя как кроссплатформенное решение, значит такое вполне себе возможно?
Долго искал в инете гид как настроить LEMP + Symfony 4 и PHPStrom, так и не нашел подробного объяснения. Появилось кучу вопросов:
- Сейчас вообще не представляю как должны шарится исходники проекта (в офиц документации docker для windows говорится, что не рекомендуется держать шареные папки на хост-машине: "If possible, avoid volume mounts from the Windows host, and instead mount on the Linux VM, or use a data volume (named volume) or data container."). Тогда где хранить исходники, конфиги и данные БД?
- Выполнять консольные команды Symfony, git, composer нужно в докер контейнерах? Если да, то как это настроить в PHPStorm? Я правильно понимаю, что на хост-машине, где установлен докер, ничего кроме докера по сути не должно быть (ну кроме IDE и пр.)?
- Ну и наверное главное: если я буду редактировать исходники с Windows PHPStorm, что случится с моими файлами (переносы строк, права на папки и пр.). Если вы такое пробовали, с какими проблемами столкнулись и как их избежать?
Сорри за длинный текст, мне кажется тема интересная для многих) Все-таки от винды не откажешься так или иначе)