Vagrant'ı denerken hata


227

Vagrant'ı çevrem için kullanıyorum ve küçük bir sorunum var:

$vagrant up

Bringing machine 'default' up with 'virtualbox' provider...
==> default: Box 'base' could not be found. Attempting to find and install...
    default: Box Provider: virtualbox
    default: Box Version: >= 0
==> default: Adding box 'base' (v0) for provider: virtualbox
    default: Downloading: base

An error occurred while downloading the remote file. The error
message, if any, is reproduced below. Please fix this error and try
again.

Couldn't open file /Users/.../base

Projemi ile başlattım vagrant initama bir sebepten dolayı vagrant upçalışmayı reddediyor.


1
Bu hatayı aldığımda yaşadığım sorun cdproje
Connor Leech

Yanıtlar:


269

Sadece bir Vagrant projesi yaratmış olabilirsiniz vagrant init. Bu Vagrantfile'ınızı oluşturacaktır, ancak bir kutunun tanımlanması gerekmez.

Bunun yerine deneyebilirsiniz

$ vagrant init hashicorp/precise32
$ vagrant up

standart bir Ubuntu görüntüsü kullanır. Vagrant web sitesinde bazı iyi örnekler veren bir Başlarken bulunmaktadır.


19
Gar, hepsi bu. Neden "Artık vagrant upilk sanal ortamınıza hazırsınız !" sonra??
Matt

@Matt - Belki de vagrantfile'ı elle düzenleyip hangi kutuyu kullanacağınızı ayarlayabildiğiniz için?
Siklon kodu

5
Zaten vagrant initve vagrant box addayrı ayrı yaptıysanız , Vagrantfile dosyasını düzenleyebilir ve config.vm.box'ı "hashicorp / precise32" olarak veya kullanmak istediğiniz herhangi bir kutuya ayarlayabilirsiniz.
Toby

1
Kabul ediyorum - vagrant çok kullanışlıdır, ancak kullanıcı deneyimi düşmek kolay olan çukur tuzaklarıyla doludur.
James

1
Teşekkür ederim, cevabınız bana yardımcı oldu!
yohannan_sobin

101

OS X kullanıyorsanız ve standart yüklemeyi kullandıysanız, vagrant'ın eski kıvrılmasını silin ve şimdi çalışmalıdır

sudo rm /opt/vagrant/embedded/bin/curl


5
Teşekkürler, bu benim için de çözüldü. +1 oy verin :)
Akko Van Ettinger

7
Bu, yerel ve uzak kutularla çalışırken
mac'teki sorunumu düzeltti

8
neden dünyaya kıvrılıyor ?
Benjamin R

3
-rfBayrak biraz burada overkill. Sadece sudo rm /opt/vagrant/embedded/bin/curlyeter. Gerçekten gerekli olmadıklarında (= -rdizinlerde gezinmek için özyinelemeli) ve -f(= hiçbir soru sorulmadan zorla ) kullanmaktan kaçınmalısınız . Özellikle sudo ile birlikte güçlü ve tehlikeli bir araç ...
Arvid

Bu yüklü Vagrant 1.8.7 kullanarak benim için çalıştı brew cask install vagrant. Aynı kutu dosyası Ubuntu 16.04'te aynı Vagrant sürümü ile iyi çalıştı.
16:46

89
vagrant init laravel/homestead

ve sonra

vagrant up

Benim için işe yarayan buydu.


4
Mükemmel ! Teşekkür ederim ! Birisi bana bunun neden olduğunu açıklayabilirse sevinirim :)
Baldráni

1
Geçerli bir kutu türü belirtmeniz gerekiyor. Geçerli bazı kutu türleri şunlardır: atlas.hashicorp.com/boxes/…
duhaime

1
Teşekkürler, beni deli ediyordu hehe. Şili'den selamlar
Cristian Meza

1
zaten bir vagrantfile varsa - vagrant init ile kullanın
Chuck

her ikisi de 2 yanıt yukarıda benim sorunum giderildi. önce 'curl' klasörünü çalıştırın sudo rm /opt/vagrant/embedded/bin/curlsonra çalıştırın vagrant init laravel/homesteadve sonravagrant up
Wei Lu

44

Bu, tanımlanmış bir kutu adı olmayan bir vagrant dosyasına sahip olmasından kaynaklandı. Bu, vagrant init'i bir kutu adı parametresi olmadan çalıştırdığınızda olur .

Bu yüzden Vagrant dosyasını silmelisiniz

vagrant init box-title
vagrant up

Umarım bu yardımcı olabilir!


Kullanılabilir kutuların listesi burada
Aleksey Potapov

Bu cevap beni 3 ay döngü o kutuyu vagrant başarısız kurtardı, teşekkür ederim (ben windows 7 üzerinde)
adam

22

bana çalışmak bunlar aşağıdaki adımlardır:

  • cd homestead (dizinin homestead klasörünüzde) VEYA cd Homestead
  • del vagrantfile veya rm -Rf Vagrantfile
  • vagrant init laravel/homestead
  • vagrant up

17

Lütfen bunu terminalinizde çalıştırın:

$ vagrant box list

Gibi bir şey göreceksin laravel/homestead(virtualbox,x.x.x)

Ardından, konumunuzu Vagrantfilebulun ve yazan satırı bulun

config.vm.box = "box"

boxçalıştırdığınızda kutu adıyla değiştirin vagrant box list.


Windows kullanıyorsanız, "Vagrantfile" dosyasının C: \ Users \ Kullanıcı Adınız konumunda olduğunu unutmayın.
egdavid

Bu benim için çözüldü çünkü .kitchen.yml'de bahsedilen kutu resmim artık mevcut değildi. Zor.
min hundje

16

eğer "Vagrantfile" already exists in this directory. Remove it before running "vagrant init". o zaman hata gösterileri

1. rm Vagrantfile
2. vagrant init hashicorp/precise64
3. vagrant up

1
==> varsayılan: 'hashicorp / precise64' kutusu bulunamadı. Bulmaya ve kurmaya çalışıyor ... Bu, yine de tercih ettiğim uzaktan kurulum için izin verdi. Ubuntu14 istemcisi ile VirtualBox Windows Host üzerinde çalışıyorum
yardpenalty.com

1
Bu benim için çalıştı. Yani sorun, bunu yaptığınızda vagrant init, vagrant varsayılan olarak Vagrantfile "kutu" sadece "temel" olarak adlandırmak için? Ve bu işi yapmak için, varsayılan olmayan bir Vagrant kutusu adı belirtmeniz gerekiyordu?
Denialos

15

Bunun eski olduğunu biliyorum, ama aynı hatayı aldım. Belgelerde açıkça görülen bu adımı kaçırdığım ortaya çıkıyor .

Ben düzenlemek için gerekli Vagrantfileayarlamak için config.vm.box, ben indirdiğini görüntüye eşit hashicorp/precise32. Varsayılan olarak olarak ayarlanmıştır base.

Belgelerin söyledikleri:

Artık kutu Vagrant'a eklendiğine göre, projemizi bir taban olarak kullanacak şekilde yapılandırmamız gerekiyor. Vagrantdosyasını açın ve içindekileri aşağıdaki şekilde değiştirin:

Vagrant.configure("2") do |config|
  config.vm.box = "hashicorp/precise32"
end

Yardımcı olur. "Vagrant init" kullanıyorum, hata geliyor. "Hashicorp / precise32" belirtildikten sonra her şey yolunda görünüyor.
yuyue007

Adım resmi dokümantasyondadır, ancak bu soruya cevap veren kaç yazarın içermediğine bakın.
jmdeamer

10

Vagrant'taki gömülü kıvırma programında bir sorun var gibi görünüyor. Yukarıdaki tavsiyeyi takiben sadece yeniden adlandırdım (sadece istedim durumunda) ve vagrant upbeklendiği gibi çalışmaya başladı.

Mac bilgisayarımda:

♪ .vagrant.d sudo mv /opt/vagrant/embedded/bin/curl /opt/vagrant/embedded/bin/curlOLD Password:


1
Bunun orijinal soruyu cevaplayıp yanıtlamadığından emin olmasam da bana yardımcı oldu. Biraz daha kazma Gömülü kıvırma komutunu çalıştırdım ve dyld: Library not loaded: @rpath/libcurl.4.dylib Referenced from: /opt/vagrant/embedded/bin/curl_old Reason: Incompatible library version: curl_old requires version 9.0.0 or later, but libcurl.4.dylib provides version 7.0.0
tapi

1
OSX'de Vagrant 1.8.7 ile aynı sorunu yaşadım. Yukarıdakiler işe yaradı.
Janaka

6

ben de bu hatayı yaşıyorum. Sanırım bunun sebebi bir box_url sağlayamıyorum.

vagrant init precise64 http://files.vagrantup.com/precise64.box

1
config.vm.box_url = "http://files.vagrantup.com/precise64.box"Vagrantfile'ım eklemek benim için düzeltti.
millerdev

4

aslında, yapmanız gerekenler:

vagrant up laravel/homestead

çünkü homestead yol adımına göre indirdiniz: http://laravel.com/docs/5.0/homestead :

vagrant box add laravel/homestead

böylece kullanmak istediğiniz kutuyu başlatmak zorundasınız - bazı rastgele ubuntu görüntüsü değil;)


4

Benimle çalışırken bir hata var vagrant up(Macbook pro, Mac OS: 10.12.1 kullandım):

An error occurred while downloading the remote file. The error message, if any, is reproduced below. Please fix this error and try again. Couldn't open file...

VagrantfileKlasörümdeki silmeyi ve çalıştırmayı denedim :

vagrant init hashicorp/precise64

sonra:

vagrant up

Sorunumu çözebilir. Umarım bu aynı problemle karşılaşan birine yardımcı olabilir.


1
Bunların hepsini birkaç kez denedim. Çalışan tek şey curl yeniden adlandırmak oldu. (Mac OS 10.12)
Vicky T

1
Windows 10 çalıştıran bir bilgisayarda da benim için
Jay Julian Payne

4

Aşağıdaki komutları çalıştırdığımda aynı sorunla karşılaştım

vagrant init
vagrant up  
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Box 'base' could not be found. Attempting to find and install...
    default: Box Provider: virtualbox
    default: Box Version: >= 0
==> default: Box file was not detected as metadata. Adding it directly...
==> default: Adding box 'base' (v0) for provider: virtualbox
    default: Downloading: base
An error occurred while downloading the remote file. The error
message, if any, is reproduced below. Please fix this error and try
again.

Couldn't open file /home/...../base

İle düzelttim

>vagrant init laravel/homestead
>Vagrant up

Benim için çalıştı.

Mutlu kodlama



1

Bir kutu eklediyseniz ve indirmeye başladınız ancak indirmeyi durdurduysanız ~/.vagrant.d/tmp/, kısmi indirme dosyasına gidin ve silin, ardından tekrar deneyin.


1

Ben klasörü giderek bu sorunu çözdü .vagrant.d/boxes/ev ve gelen klasörün değiştirilen adı altında laravel-VAGRANTSLASH-homesteadiçin base. Ve benim için çalıştı.

Lütfen BIOS'unuzda sanallaştırmanın etkin olup olmadığını kontrol edin.


"vagrant init laravel-VAGRANTSLASH-homestead" çalıştırmalısınız
Gil Margolin

1

ayrıca vm'yi makinenize de ekleyebilirsiniz

vagrant box add precise32 http://files.vagrantup.com/precise32.box

1

Bir Vagrant'a başlamadan önce ilk ve en önemli adım, sisteminizde hangi kutuların bulunduğunu kontrol etmektir. Kullanılabilir kutuların listesini almak için bu komutu kullanın.

vagrant box list

Ardından, belirli bir kutuyu seçerek başka bir işleme geçin

vagrant init ubuntu/trusty64 (Ubuntu / trusty64 seçtim)

sonra,

vagrant up

NOT: Körü körüne ateşleme komutları yerine biraz Google / Youtube araması yaparsanız harika olur :) Teşekkürler


0

Vagrant init yaptığınızda, deponuzdaki vagrant dosyasını değiştirir ve size bu hatayı verebilir. Bu yüzden orijinal vagrant dosyasını uzaktan veya yedek bir vagrant dosyasından kopyalamanızı ve bundan sonra vagrant'ı denemenizi öneririm.

Ben aynı sorunla karşılaştım ve sadece uzak repo vagrant dosyasını kopyaladı ve çalıştırmaya çalıştığım vagrant dosyasını değiştirdi. Bu, vagrant dosyasındaki yapılandırmaları VM ile senkronize etti.


0

vagrant initaynı dizinde oluşturulan vagrant dosyasını düzenleyin ve kutu kutunuzun config.vm.box = "ubuntu/trusty64"bulunduğu satıra kutu adını girin ubuntu/trusty64. Şimdi vagrant upindirip ubuntu/trusty64sizin için temel kutu olarak ayarlayacağız .



0

Homestead.yaml dosyasını dikkatlice kontrol edin. Satır bittikten sonra fazladan boşluk karakteri olup olmadığını kontrol edin. Sonra gitbash -> go Homestead dizini -> "vagrant up --provision" komutunu açın.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.