如何在Ubuntu 16.04主机和Homestead VM之间立即同步文件?

时间:2018-05-01 22:40:12

标签: vagrant virtual-machine hosting

我安装了Ubuntu16.04主机,Virtualbox 5.2.4,Vagrant 2.0.4和Homestead-7。我设法成功配置了所有drupal应用程序,并导入了db,并配置了/etc/hosts个文件。我准备编辑我的网站......除了一个主要(新手)问题。如何编辑主机上的文件,然后立即看到托管我的网站的客户机上反映的更改?

There was a suggestion to move my files/directories into the same folder作为我的Vagrantfile,但我似乎没有用。我的Homestead.yaml结构如下:

  

文件夹:

- map: ~/Homestead/public_html/drupalsitefolder
  to: /public_html/drupalsitefolder
  type: "rsync"
  options:
      rsync__args: ["-v", "-a", "-h", "-r", "-u", "--delete", "-z"]
     

位点:

- map: drupalsite
  to: /public_html/drupalsite
  type: "apache"
  php: "7.1

然而,在我编辑&例如,保存一个css文件......这些更改不会反映到guest虚拟机托管的网站上。很抱歉,如果这是一个noobie问题,但我当然不想scp每次小编辑。

任何人都可以就如何跳过最后一道障碍给我建议吗?

由于

1 个答案:

答案 0 :(得分:0)

对于可能遇到同样问题的任何其他Laravel / Homestead新手,我会继续回答我自己的问题。

1。)打开位于Homestead文件夹中的Vagrant文​​件。

2。)在结束之前"结束"在Vagrantfile的底部插入此行config.vm.synced_folder "src/", "/srv/website"

"src/" = /home/your_user_name/folder_with_your files

"/srv/website" = /home/vagrant/folder_with_your files注意:此位置可以是您想要的VM框内的任何位置,将其放在主文件夹中非常方便。)

3。)然后使用vagrant reload --provision(或vagrant up,具体取决于您的盒子是否已创建)。

4。)完成后,使用vagrant ssh输入您的VM框并将apache的文档根目录更改为/home/vagrant/folder_with_your_files follow these instructions

5.。)从这里使用sudo service apache2 restart重新加载apache2,以便它可以" 看到"你的文件。

此浏览到您的网站...如果您看到自己的网站,则可以开始在主机上编辑文件。如果您看到"禁止访问"错误,您只需要调整权限。

6。)如果必要,编辑您的Vagrant文​​件,如下所示:

config.vm.synced_folder "src/", "/srv/website", :owner => "www-data", :group => "www-data"

如果这不起作用,那么新手不要好运! : - )