2016-12-08 3 views
1

Я выпускник компьютерных наук. Я только что начал стажировку в компании, где они используют Laravel. Моя первая задача - установить Homestead. Я это сделал. Моя вторая задача - создать общую папку между Homestead и моей локальной машиной (у меня есть программа macbook pro). Я быстро просмотрел документацию Laravel, но я не нашел статьи, непосредственно связанной с этой темой. Может ли кто-нибудь помочь мне на эту тему? (Как я могу создать общую папку между Homestead и моей локальной машине?)Как создать общую папку между Homestead и моей локальной машиной

ответ

2

в вашем Homestead.yaml

folders: 
    - map: ~/Code 
     to: /home/vagrant/Code 

Согласно documentation

+0

Я прочитал это в документации, но что такое «Код»? Я создал папку на своем рабочем столе. Я назвал это: LaravelProjects. Внутри этой папки я создал подпапку. Я назвал подпапку: todo. Я хочу поделиться своей папкой: todo между Homestead и моей локальной машиной. Поэтому я пошел в свой Homestead.yaml, и я заменил «Code» на имя моей подпапки: todo. Это верно? И что мне делать дальше? –

+0

«map» - это путь к локальной папке, а 'to' - путь к папке на виртуальной машине. Поместите путь ваш 'desktop/LaravelProjects' в' map' и '/ home/vagrant/whatever' в' to' – Vuldo

+0

@ vuldo.Что мне делать после изменения моего файла Homestead.yaml? Мои вопросы являются основными, но это мой первый опыт работы с Homestead! –

1

Не волнуйтесь, вы не одиноки , Это одна из областей, которая сбивает с толку, прежде чем использовать ее при настройке общих папок на усадьбе.

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 file to был префикс /home/vagrant
  • Пробег ls и LaravelProjects Должен быть виден. Содержащийся в пределах LaravelProjects должен быть вашим проектом todo.
  • Перейдите к http://todo на локальном компьютере, и браузер должен отображать экран приветствия Laravel означающий, что все работает, как это должно

Теперь Вы можете изменить файлы проекта на локальном компьютере, и эти изменения будут отражены на ВМ и наоборот.

+0

Спасибо, что нашли время ответить на мой вопрос. ОК. Мой Homestead.yaml теперь идентичен тому, что вы написали в своем комментарии. Далее, мне нужно дважды проверить файл моих хостов. Я добавил одну строку в мой файл hosts: 192.168.10.10 \t todo (это ip из моего файла yaml). Если все в порядке, что мне делать дальше, чтобы перейти к моей общей папке на моей виртуальной машине? Можете ли вы предоставить пошаговые инструкции? Начиная с открытия терминала –

+0

Когда я попытался применить ваши инструкции, мне пришло в голову, что моя установка Laravel не увенчалась успехом! Когда я запустил Vagrant на моем терминале, у меня на экране появился длинный текст, который указывает на наличие проблемы. Я извлек часть этого текста: «/opt/vagrant/embedded/lib/ruby/2.2.0/psych.rb:370:in' parse ': (): нашел символ, который не может запустить какой-либо токен во время сканирования следующего токен в строке 17 столбца 7 (Psych :: SyntaxError) .. «Я считаю, что моя проблема заключается в настройке Laravel. Я смог установить его, но я не знал, как его настроить. Официальная документация не ясна. –

+0

Я дошел до этой точки в документации laravel: «После установки Laravel вы должны настроить ваш веб-сервер/веб-root как общедоступный каталог. Index.php в этом каталоге служит в качестве переднего контроллера для всех HTTP-запросов, входящих в ваше приложение ». Как я могу это сделать? –

Смежные вопросы