Привет. Просто крик отчаяния о помощи :)) Никак не могу понять, как мне должна помогать в веб-разработке серверная Убунту в виртуалке.
Я ещё нуб и профан, всю жизнь работал за виндой, но все поголовно говорят, что для полноценной разработки нужна unix-система, да и многие мануалы написаны для выполнения оных в unix-системах.
Я сейчас немного дизайню и работаю верстальщиком (html+css+jquery+vanilla js, без сборщиков и прочего) в VSCode, параллельно учу Питон, так как хочу уйти в бэкенд. Не знаю, получится ли уйти на 100% с фронта, но я хочу попробовать.
Соответственно, для таких виндузянтиков, как я, многие советуют поставить Линукс в виртуалку. Да не десктопный линукс, а серверный.
Выбор пал на Убунту Сервер, хотя некоторые советуют ещё Debian netinstall туда закинуть.
Так вот...
Я тупо не могу понять, как мне полноценно работать с серверной системой в виртуалке и в винде.
Например, для практики по питону я хочу развернуть виртуальное окружение venv или для выполнения тестового задания мне нужно развернуть проект у себя локально. Установить ноду, nvm, golang, modd, docker - я примерно понимаю, как это сделать через консоль (благо пробовал на десктопной убунте провернуть - получилось).
Сделаю я это в виртуалке, но как мне потом редактировать скрипты?
Возвращаться в винду, открывать через VScode файлы, которые хранятся на виртуалке (такое вообще возможно?), править, базово тестить (через терминал VScode), а потом в виртуалке пробовать запустить тот код, который мне нужен?
P.S. Переезжать на десктопный линукс не хочу - держит годовая подписка на OneDrive (криво работает в линуксе, ибо синхронизирует сразу все файлы, а у меня там почти 1Тб), Фотошоп (активно в нём работаю сам, Фигма не вариант, ибо ретушь фото), десктопный Еверноут (хотя могу смириться с кривой веб-версией) и ряд прог (Премьер, AfterEffects, Audition, Ableton Live).
Поэтому рассматриваю только виртуалку, ибо на WSL всё ещё грешат и не рекомендуют переходить.
Docket image с Ubuntu + поставьте питон и ещё что нужно в образ. Создавайте с этого образа контейнер и прокиньте нужные порты и volumes. Файлы на локалке и в docker container будут одинаковыми.
Поднимаете ssh. Настраиваете виртуалку что бы она была видна в вашей сети. Например у меня
192.168.88.252
Подключаете студию https://code.visualstudio.com/docs/remote/ssh
Или подключаетесь через ssh или через плагин для total commander ssh fs
Mishcake а что мешает снести виндоуз полностьюсовсем и отрубить концы с потрохами ? или чтобы ностальгия не мучала посадить виндоуз в виртуалку
через *дцать лет все одно никакой винды не останется будет один сплошной юникс говорят
За это время MS успела похорогить тормозиллу, кучу конкурентов, джабу, создала отличный язык, пропихалась в лидеры облачного хостинга, сделала практически идеальную IDE.
Владимир Коротенко, 25 как раз лет назад если не ошибаюсь линукс не был еще готов для нормальной работы и многие пользовались считались гиками
а докер и вообще появился 2013
так что оснований стало сильно больше
Возвращаться в винду, открывать через VScode файлы, которые хранятся на виртуалке (такое вообще возможно?), править, базово тестить (через терминал VScode), а потом в виртуалке пробовать запустить тот код, который мне нужен?
Если честно, не очень хочется быть бета-тестером всех новых фич винды, ибо WSL2 доступен только для участников инсайдерской программы (вроде бы). Но я профан, могу ошибаться :)
Mishcake, Да, для участников Windows insider program, которую можно считать этакой роллинг-релизной моделью лайт. Собственно, а что мешает принять в ней участие?
Vadim Priluzkiy, ничего не мешает, только
1) хочу как можно дольше сидеть на плюс-минус стабильной версии винды (откидывая тот факт, что обычные юзеры и так являются бета-тестерами майкрософта - последние смешные баги после прекращения поддержки 7-й винды тому подтверждение), так что тут инсайдерская программа, имхо, как пороховая бочка
2) wsl - всё же не настоящий сервер, имхо. а опыт работы с оным будет очень кстати, даже развернув его в виртуалке
Mishcake, Ну если вы хотите действительно погрузиться в Linux, то именно его надо ставить основной системой, а винду в виртуалку. ;-) На самом деле WSL внутри устроен очень интересно, я презентацию хипстеров из MS смотрел. WSL -- настоящий сервер. Использует майкрософтовский гипервизор, так что он ещё и лучше чем виртуалка типа VirtualBox и сотоварищи.
Vadim Priluzkiy, звучит интересно, хотелось бы попробовать. Хотя отзывы всё равно неоднозначные у людей на Хабре, мол "да-да, прикольно и здорово", но в тоже время "сорри, мы останемся на виртуалках/unix-системах"
Python мультиплатформенный.
Если подойти с умом - то можно поставить окружение в windows и спокойно в нем разрабатывать.
А в Linux делать автодеплой и автоматическое тестирование нужной ветки репозитория вашего проекта.
Мультиплатформенный, да, но когда я из-под винды делал какие-то практики по питону и создавал окружение командой python3 -m venv имя_окружения, то оказалось, что после установки в окружение пакета (например, first_venv/bin/cowsay) вызвать его командой first_venv/bin/cowsay hello невозможно, так как в винде в bin ничего не прописывается/создаётся, а создаётся как-то по другому.
Да, нагуглить решение можно и я это сделал, но в будущем такие телодвижения делать не хочется, если есть вариант работать в десктопном линуксе (что пока не очень получается даже с дуалбутом) или можно работать в виртуалке)
Добрый день!
Так как в Windows 10 появилась возможность запускать, не полноценное, Linux ядро, но всё же Linux. То по моему мнению не надо возиться с запуском виртуальной машины на Linux. Нужно только включить функцию WSL2 (займёт несколько минут найти команду в google и вставить в PowerShell, а потом установить желаемое ядро из Microsoft Store). Такая опция быстрее и не жрёт ресурсы железа.
Далее можете работать на линуксе из той же PowerShell, используя команду "wsl".
Так же Vs Code имеет опцию работы с WSL2 (прочитайте документацию на счёт этого).
В результате у вас будет Linux ядро которая работает как Windows приложение, её достаточно чтобы вы могли продолжать работать и получить доступ к файлам проекта без головной боли.
В виртуалке ссш и самба, в винде настраиваешь сетевой диск, и всё у тебя фалы в обычном проводнике, а вместо консоли через ссш например секюр срт. У меня так сделано дома и имхо очень удобно, удобнее чем просто десктоп убунта, так у меня на работе так что каждый день сравниваю.