Точка монтирования Vagrant Synced Folder - PullRequest
0 голосов
/ 29 мая 2020

Я пытаюсь настроить сервер Ubuntu на платформе Ma c OS X, чтобы разрешить установку устаревшего приложения Ruby on Rails. Проблема связана с синхронизированными файлами, сопоставленными с виртуальной машиной.

Описание среды:

В среде Ma c OS X есть один исходный каталог с двумя локальными репозитории внизу;

  1. Папка, содержащая все настройки предоставления Vagrant - например, папка Vagrantfile с источником с папкой с именем project
  2. Папка с исходным кодом приложения - например, папка с именем myproject

Поэтому при подготовке я хочу смонтировать источник приложения myproject, чтобы он был доступен с машины Ubuntu. Следуя примеру VagrantFile, я настроил общие папки в соответствии с:

  # Share an additional folder to the guest VM. The first argument is
  # the path on the host to the actual folder. The second argument is
  # the path on the guest to mount the folder. And the optional third
  # argument is a set of non-required options.
  config.vm.synced_folder "../myproject", "/home/vagrant/myproject"

В основном я предполагаю, что относительно папки, содержащей VagrantFile, я поднимаюсь на один уровень. Это root всей работы, содержащей одну папку для информации Vagrant и одну для исходного кода.

Проблема

Теперь, когда я выполняю команду vagrant up машина Ubuntu раскручена, и я нахожу следующее:

  • Информация из папки, в которой живет VagrantFile, находится на машине Ubuntu по адресу / vagrant
  • Папка с исходным кодом приложения смонтирована на компьютере Ubuntu root, как в / myproject

Я ожидал, что папка с исходным кодом приложения будет совместно использована Машина Ubuntu под точкой монтирования / vagrant . В документации Vagrant по синхронизированным папкам ( документация ) указано:

The first parameter is a path to a directory on the host machine. If
the path is relative, it is relative to the project root

, например,

Vagrant.configure("2") do |config|
  # other config here

  config.vm.synced_folder "src/", "/srv/website"
end

Таким образом, поскольку я указал свою синхронизируемую папку как config.vm.synced_folder "../myproject", "/home/vagrant/myproject", тогда она будет прикреплен к серверу в домашнем каталоге бродячего пользователя, а не в root файловой системы.

Есть предложения?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...