config.vm.synced를 수행할 때 Vagrant guest의 /var/www가 정지됩니다.

config.vm.synced를 수행할 때 Vagrant guest의 /var/www가 정지됩니다.

Vagrant 웹사이트에서 모든 synced_folder 구성을 검토했습니다...

호스트 OS: Windows 7 게스트 OS: Ubuntu

이것은 내 Vagrantfile 구성입니다.

# -*- mode: ruby -*-
# vi: set ft=ruby :

# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|  
    config.vm.box = "base"
    config.vm.hostname = "daison.vagrant.me"
    config.vm.network :forwarded_port, guest: 80, host: 8080
    config.vm.network :private_network, ip: "192.168.33.10"
    config.vm.synced_folder ".", "/vagrant", disabled: true
    #config.vm.synced_folder "C:\\Users\\daison\\vagrant\\src\\www", "/var/www"
end

나도 그래C:\Users\daison\vagrant\> vagrant reload

다음을 실행하여 Ubuntu의 아파치에 액세스할 수 있습니다.127.0.0.1:8080 or 192.168.33.10 or daison.vagrant.me:8080 .내 호스트에서

그래서commented synced_folder vagrant를 제거하고 다시 로드하면 됩니다. 모든 IP 주소와 내 가상호스트의 결과는 다음과 같습니다.접근 불가--내 호스트 내부

접속해보았습니다vagrant ssh

vagrant@daison: cd /var/www
vagrant@daison: /var/www$ ls

그리고 아무것도 나타나지 않네요...

folder또한 게스트 폴더가 정지되더라도 synced_folder가 실제로 작동하는지 확인하기 위해 생성을 시도했습니다.

vagrant@daison: /var/www$ mkdir thisFolderWillAlsoShareToHost

그런 다음 내 폴더C:\Users\daison\vagrant\src\www 생성되었습니다.내 호스트에서.


또한 방랑자를 다시 로드한 후 와 동일하게 고정되는지 "/vagrant/sample"테스트하기 위해 synced_folders를 변경하려고 했습니다 ./vagrant/sample/var/www

결과는 다음과 같습니다. 웹 서버에 액세스할 수 있습니다. 물론 그것은 의 일부는 아니지만 내부를 /var/www사용하는 경우에도 정지됩니다.ls/vagrant/sample

누군가가 도와줄 수 있을까요? 감사합니다!

답변1

문제를 설명하는 방식으로 볼 때 게스트에서 일부 웹 사이트를 만들고 동기화 폴더를 설정했으며 방랑자가 호스트와 게스트 간에 양방향 동기화를 수행할 것으로 예상되는 것처럼 들립니다. 그것은 작동 방식이 아닙니다. 동기화된 폴더를 활성화하면 호스트의 폴더를 게스트에 마운트하는 것입니다. 호스트의 콘텐츠는 게스트의 기존 콘텐츠를 마스킹합니다. 내가 의미하는 바는 다음과 같습니다.

동기화된 폴더가 없는 경우

> dir C:\Users\daison\vagrant\src\www
a_file_on_the host

$ ls /var/www
a_file_on_the_guest

해당 폴더가 동기화되었습니다.

> dir C:\Users\daison\vagrant\src\www
a_file_on_the host

$ ls /var/www
a_file_on_the host

폴더가 동기화되는 동안 게스트 내에서 새 파일을 생성한 경우

> dir C:\Users\daison\vagrant\src\www
a_file_on_the host
file_created_while_synced

$ ls /var/www
a_file_on_the host
file_created_while_synced

동기화된 폴더를 비활성화하면 이제 볼 수 있습니다.

> dir C:\Users\daison\vagrant\src\www
a_file_on_the host
file_created_while_synced

$ ls /var/www
a_file_on_the_guest

따라서 웹사이트가 게스트에서 생성된 경우 동기화하는 동안 더 이상 사용할 수 없습니다./var/www. 이것이 바로 웹 서버가 "정지"되는 이유입니다.

관련 정보