remote container folder sharing на phpstorm или как подключиться к контейнеру из phpstorm или как сделать container - wsl - phpstorm
у меня есть docker контейнер в котором лежит проект. я могу подключиться к фс контейнера и изменять проект используя Visual Studio Code и его расширения Remote - WSL и Remote - Containers. т.е. я делаю как показано на оф странице докера о remote wsl. и хотел так же подключиться через phpstorm, подобного расширения я не нашел в маркетплейсе и подумал сделать с созданием символической ссылки ИЗ_WSL2 -> В_WINDOWS но у меня в WSL нет папки проекта и не знаю как подключить папку с проектом из контейнера в WSL. ну тут возникает два выхода,
- подключиться из phpstorm напрямую к фс докер контейнера
PhpStorm -> DOCKER_CONTAINER(как я это делаю с VS Code) - каким то образом подключить директорию из докер контейнера в WSL (у меня Ubuntu-20.04 LTS) и открыть проект из него. (есть способ открыть проект из wsl в phpstorm. с той же символ-ой ссылкой)
DOCKER_CONTAINER -> WSL2 -> PhpStorm
я гуглил и не нашел ответа ни на первый, ни на второй вопрос. может кто сталкивался с подобным с знает что делать?
p.s. из этих двух вариантов предпочтительнее второй. поскольку к wsl можно получить доступ из проводника (\\wsl$\Ubuntu-20.04) и работа с ним была бы удобнее
Ответы (1 шт):
получилось сделать такой вариант. вместо того чтобы использовать laradock в windows его можно установить в самом wsl (у меня ubuntu-20.04 LTS). возможность docker c 17. версии WSL intergration позволит вам использовать в взаимодействии ваш wsl и docker. естественно вам не будут доступны директории из контейнеров. но вам будут доступно управление docker (docker-desktop и docker-desktop-data). таким образом развернув laradock в wsl можно избежать описанной проблемы скорости между windows и wsl. (ну поскольку wsl у вас скорее всего будет linux и получается linux(wsl) -> docker)
а поскольку доступ к wsl можно получить из виндовс. то проект открыть в phpstorm не составит труда (та же символ-ая ссылка). как сделать:
требования:
- Включите Hyper-V
- Установите \ Обновите WSL в вашей Windows
- Установите сам Docker в Windows и включите Use WSL2 engine (кажется по умолчанию включена)
- Установите какой-нибудь дистрибутив из Windows Store. (к примеру Ubuntu-20.04)
4.1 при первом запуске дистрибутива вам нужно будет его настроить (ввести root пароль и юзернейм)
чо куда тыкать:
- В настройках Docker
Resources -> WSL INTEGRATIONвключите ваш дистрибутив - В cmd или powershell введите команду
wslчтобы попасть в дистрибутив (но легче всего использовать Windows Terminal туда после установки сразу добавляется дистрибутив) - Перейдите в
~/home/USER_NAME/projects(не обязательно этот путь, главное чтобы это не была директория вашей Windows системы) - По стандарту сделайте
sudo apt update && sudo apt upgrade - Установите git. и склонируйте
laradockзатем get started (ну типа .envсделать). - Помните тык 6? вам доступен docker внутри вашего wsl. поэтому смело
docker-compose up -d ... - наконец клонируете ваш проект так же в wsl (важно опять же использовать только директории wsl) и создайте символ-ую ссылку для phpstorm. в фс wsl можно зайти написав в проводнике путь
\\wsl$\ИМЯ_ДИСТРИБУТИВА\. посмотреть имя дистрибутива можно выполнив командуwsl -l