HTTP-запросы Homestead vagrant медленные с хоста, а не с гостя

У меня есть конфигурация усадьбы по умолчанию под управлением Laravel API. Когда я делаю запрос скручивания к конечной точке API изнутри виртуальной машины, я получаю ответ обратно через ~200 мс. Однако, когда я делаю тот же самый запрос curl от хоста, это занимает ~6 секунд.

Я изменил файл host osx /etc/hosts, чтобы указать домен для гостевого IP (192.168.10.10 api.example.local).

Я попытался добавить каждый из следующих параметров конфигурации Virtual Box без изменений:

vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]

vb.customize ["modifyvm", :id, "--natdnsproxy1", "on"]

vb.customize ["modifyvm", :id, "--nictype1", "82540EM"]

Homestead.yaml

---
ip: "192.168.10.10"
memory: 2048
cpus: 1
provider: virtualbox

authorize: ~/.ssh/id_rsa.pub

keys:
    - ~/.ssh/id_rsa

folders:
    - map: ~/Code
      to: /home/vagrant/Code
      type: "nfs"

sites:
    - map: api.example.local
      to: /home/vagrant/Code/api.example.local/public

databases:
    - api

Vagrantfile

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

require 'json'
require 'yaml'

VAGRANTFILE_API_VERSION ||= "2"
confDir = $confDir ||= File.expand_path(File.dirname(__FILE__))

homesteadYamlPath = confDir + "/Homestead.yaml"
homesteadJsonPath = confDir + "/Homestead.json"
afterScriptPath = confDir + "/after.sh"
aliasesPath = confDir + "/aliases"

require File.expand_path(File.dirname(__FILE__) + '/scripts/homestead.rb')

Vagrant.require_version '>= 1.9.0'

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
    if File.exist? aliasesPath then
        config.vm.provision "file", source: aliasesPath, destination: "/tmp/bash_aliases"
        config.vm.provision "shell" do |s|
            s.inline = "awk '{ sub(\"\r$\", \"\"); print }' /tmp/bash_aliases > /home/vagrant/.bash_aliases"
        end
    end

    if File.exist? homesteadYamlPath then
        settings = YAML::load(File.read(homesteadYamlPath))
    elsif File.exist? homesteadJsonPath then
        settings = JSON.parse(File.read(homesteadJsonPath))
    else
        abort "Homestead settings file not found in #{confDir}"
    end

    Homestead.configure(config, settings)

    if File.exist? afterScriptPath then
        config.vm.provision "shell", path: afterScriptPath, privileged: false
    end

    if defined? VagrantPlugins::HostsUpdater
        config.hostsupdater.aliases = settings['sites'].map { |site| site['map'] }
    end

    config.vm.provider :virtualbox do |vb|
      vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
    end
end

Кажется, что при редактировании файлов, совместно используемых гостем и хостом, задержка отсутствует, только HTTP-запросы.

Я что-то пропустил? Или эта скорость обычная?

0 ответов

Другие вопросы по тегам