Я выпускник компьютерных наук. Я только что начал стажировку в компании, где они используют Laravel. Моя первая задача - установить Homestead. Я это сделал. Моя вторая задача - создать общую папку между Homestead и моей локальной машиной (у меня есть программа macbook pro). Я быстро просмотрел документацию Laravel, но я не нашел статьи, непосредственно связанной с этой темой. Может ли кто-нибудь помочь мне на эту тему? (Как я могу создать общую папку между Homestead и моей локальной машине?)Как создать общую папку между Homestead и моей локальной машиной
ответ
Не волнуйтесь, вы не одиноки , Это одна из областей, которая сбивает с толку, прежде чем использовать ее при настройке общих папок на усадьбе.
folders:
- map: ~/LaravelProjects
- to: /home/vagrant/LaravelProjects
sites: map: todo
to: /home/vagrant/LaravelProjects/todo/public
folders: map
содержит корень ваших проектов (основная папка, содержащая ваши проекты) на локальном компьютере. Поэтому, используя ~/LaravelProjects
, это означает, что все ваши проекты содержатся в папке LaravelProjects в домашней папке . Вы можете сделать свою корневую папку в любом месте, а не в домашней папке.
folders: to
относится к тому месту, где корневая папка LaravelProjects
будет находиться на виртуальной машине. Это отразит содержимое корневой папки вашего компьютера.
sites:map
будет именем хоста, которое вы будете использовать для доступа к вашему сайту. Вы можете назвать его любым способом.
sites:to
- это ссылка на корневую или общую папку вашего документа, которая будет обслуживаться вашим веб-сервером. Поэтому, используя /home/vagrant/LaravelProjects/todo/public
, мы сообщаем веб-серверу, чтобы он обслуживал наше приложение, содержащееся в проекте todo
. Если файлы проекта содержатся во внутренней папке, например src
, мы бы изменили ее на /home/vagrant/LaravelProjects/todo/src/public
.
В чате я видел, как вы спрашивали, как редактировать файл hosts. Вы можете использовать, использовать sudo open /etc/hosts
Update
Переход к общей папке
- Изменить каталог в Homestead каталог
- Выполнить команду
vagrant up
или если виртуальная машина уже запущена, запуститеvagrant reload --provision
- После загрузки виртуальных машин подключитесь к виртуальной машине с помощью SSH
vagrant ssh
- Ваше приглашение должно быть изменено на
[email protected]:~$
, что означает, что вы теперь зарегистрированы на виртуальной машине. - Запуск
pwd
и он должен отражать/home/vagrant
. Это объясняет, почему в Усадьбе.yaml fileto
был префикс/home/vagrant
- Пробег
ls
иLaravelProjects
Должен быть виден. Содержащийся в пределахLaravelProjects
должен быть вашим проектомtodo
. - Перейдите к
http://todo
на локальном компьютере, и браузер должен отображать экран приветствия Laravel означающий, что все работает, как это должно
Теперь Вы можете изменить файлы проекта на локальном компьютере, и эти изменения будут отражены на ВМ и наоборот.
Спасибо, что нашли время ответить на мой вопрос. ОК. Мой Homestead.yaml теперь идентичен тому, что вы написали в своем комментарии. Далее, мне нужно дважды проверить файл моих хостов. Я добавил одну строку в мой файл hosts: 192.168.10.10 \t todo (это ip из моего файла yaml). Если все в порядке, что мне делать дальше, чтобы перейти к моей общей папке на моей виртуальной машине? Можете ли вы предоставить пошаговые инструкции? Начиная с открытия терминала –
Когда я попытался применить ваши инструкции, мне пришло в голову, что моя установка Laravel не увенчалась успехом! Когда я запустил Vagrant на моем терминале, у меня на экране появился длинный текст, который указывает на наличие проблемы. Я извлек часть этого текста: «/opt/vagrant/embedded/lib/ruby/2.2.0/psych.rb:370:in' parse ': (
Я дошел до этой точки в документации laravel: «После установки Laravel вы должны настроить ваш веб-сервер/веб-root как общедоступный каталог. Index.php в этом каталоге служит в качестве переднего контроллера для всех HTTP-запросов, входящих в ваше приложение ». Как я могу это сделать? –
Я прочитал это в документации, но что такое «Код»? Я создал папку на своем рабочем столе. Я назвал это: LaravelProjects. Внутри этой папки я создал подпапку. Я назвал подпапку: todo. Я хочу поделиться своей папкой: todo между Homestead и моей локальной машиной. Поэтому я пошел в свой Homestead.yaml, и я заменил «Code» на имя моей подпапки: todo. Это верно? И что мне делать дальше? –
«map» - это путь к локальной папке, а 'to' - путь к папке на виртуальной машине. Поместите путь ваш 'desktop/LaravelProjects' в' map' и '/ home/vagrant/whatever' в' to' – Vuldo
@ vuldo.Что мне делать после изменения моего файла Homestead.yaml? Мои вопросы являются основными, но это мой первый опыт работы с Homestead! –