Итак, нашел не самое элегантное решение, но вполне рабочее:
ред. Оказывается не совсем рабочее.
После перезапуска виртуалки необходимо заново выгружать все файле проекта, при этом заранее исправавив права доступа к /c/Users
Оставляю пока тут, может у кого-то появятся идеи
1. Отключаем общие папки в настройках виртуальной машины.
2. Включим sftp для виртуальной машины:
# Открываем машину в virtualbox и редактирем конфиг ssh сервера
vi /usr/local/etc/ssh/sshd_config
# и добавить строку
Subsytem sftp internal-sftp
# для тех, кто не работал в vi
# сначала жмем i
# затем добавляем нужную строку
# жмем ESC, жмем :
# вводим (внизу слева) wq жмем enter
3. Перезапускаем виртуалку, чтоб общие папки более не были доступны и перезапустился сервер ssh (я не нашел как его перезапусить по типу service sshd restart)
4. Создадим нужный путь:
mkdir -p /c/Users
chown 0777 /c/Users -R
5. Сгенерируем ppk ключ для подключения.
Надо скоримть программе puttygen ключ %userprofile%\.docker\machine\machines\default\id_rsa
Далее действия выполняются в Phpstrom
6. Настраиваем подключение в шторме к виртуалке по sftp, указав сгенерированный в п.5 ppk-файл. Имя пользователя docker. Заодинм укажем, что файлы должны загружаться автоматически.
7. Настраиваем маппинг файлов. Обратите внимание, что local path и deployment path должны совпадать
8. Указываем, что мы хотим менять права на загруженных файлах и папках на 0777 автоматически при загрузке.
На этом все.
Теперь можно вносить изменения в проект, которые будут автоматически загружены в docker виртуалку по sftp.
Docker при этом крутится достаточно быстро - dev окружение symfony грузится за 60-150 мс.
Больше нам не потребуется заходить в саму виртуалку, все будет так же работать через docker консоль.