다운로드 한 .box 파일을 Vagrant에 추가하는 방법은 무엇입니까?


115

.boxVagrant의 사용 가능한 상자 목록에 다운로드 한 파일을 어떻게 추가 합니까? .box파일은 외부 드라이브에 있습니다.

실행을 시도 vagrant box add my-box d:/path/to/box했지만 Vagrant는 경로를 URL로 해석합니다.


방랑 버전과 함께 전체 출력을 게시 할 수 있습니까? 이론적으로 방랑 상자 추가는 로컬 파일 경로와 매력처럼 작동합니다
Emyl

3
나는 우분투에 있으며 vagrant box add my-box /path/to/file.box나를 위해 잘 일했습니다.
maan81

답변:


177

해결책:

vagrant box add my-box file:///d:/path/to/file.box

URL 형식이어야합니다.


8
내가 사용하는 경우vagrant box add my-box ./path/to/mybox.box ?
Rakib 2015 년

-f상자를 다시 다운로드하도록 전달 하고 이미 존재하는 경우 교체 할 수도 있습니다. 예vagrant box add -f my-box http://some-url
Brad Parks

macos 및 linux (2.2.2)에서 vagrant는 nun URI 경로와 함께 작동하므로 적어도 여기서 file : // 스키마를 생략 할 수 있습니다. 아마 버전 별 변경 또는 윈도우 특정, 난 오히려 후자 기대
유진 메이어

90

vagrant가있는 폴더를 가리키고 상자 파일을 동일한 위치에 복사 할 수 있습니다. 그런 다음 다음과 같이 실행할 수 있습니다.

vagrant box add my-box name-of-the-box.box
vagrant init my-box
vagrant up

상태를 확인하기 위해

vagrant status

내가했던 vagrant initvagrant up나의 방랑 상자가 실행 중입니다. 그러나 나는 ssh를 할 수 없습니다. 내가 할 때 vagrant ssh"SSH를 시도하는 컴퓨터는 암호 기반 인증을 사용하도록 구성되어 있습니다. Vagrant는 암호를 입력하는 스크립트를 작성할 수 없습니다. 암호를 입력하라는 메시지가 나타나면 동일한 암호를 입력하십시오. Vagrantfile에서 구성했습니다. " 에서 아무것도 구성하지 않았지만 Vagrantfile. 나는 Vagrantfile자동으로 생성 된을 사용하고 vagrant init있습니다. 내가 cat Vagrantfile, 암호 나 pem 또는 그 어떤 것도 볼 수 없습니다
Rakib

경우 vagrant ssh암호를 요구하고, 당신이 사용하고있는 기본 상자가 공개되고, 기회는 암호가 있습니다 vagrant.
벤더 가장 중대한

나는 그것을 해결되지 않는 방랑자 같은 오류와 비밀번호가
카림 사미르

modern.ie Microsoft 상자 의 암호 는Passw0rd!
Redsandro

27

.box이 저장된 디렉토리로 변경하십시오.

실행 vagrant box add my-box downloaded.box하면 절대 경로를 피할 수 있으므로 작동 할 수 있습니다 (Windows에서?).


내가했던 vagrant initvagrant up나의 방랑 상자가 실행 중입니다. 그러나 나는 ssh를 할 수 없습니다. 내가 할 때 vagrant ssh"SSH를 시도하는 컴퓨터는 암호 기반 인증을 사용하도록 구성되어 있습니다. Vagrant는 암호를 입력하는 스크립트를 작성할 수 없습니다. 암호를 입력하라는 메시지가 나타나면 동일한 암호를 입력하십시오. Vagrantfile에서 구성했습니다. " 에서 아무것도 구성하지 않았지만 Vagrantfile. 나는 Vagrantfile자동으로 생성 된을 사용하고 vagrant init있습니다. 내가 cat Vagrantfile, 암호 나 pem 또는 그 어떤 것도 볼 수 없습니다
Rakib

9

Windows 용 솔루션 :

  • cmd 또는 powershell을 관리자로 엽니 다.
  • .box파일이 포함 된 폴더에 CD
  • vagrant box add --name name_of_my_box 'name_of_my_box.box'
  • vagrant box list 목록에 새 상자가 표시되어야합니다.

MAC 솔루션 :

  • 터미널 열기
  • .box파일이 포함 된 폴더에 CD
  • vagrant box add --name name_of_my_box "./name_of_my_box.box"
  • vagrant box list 목록에 새 상자가 표시되어야합니다.

3
F:\PuppetLab\src\boxes>vagrant box add precise32 file:///F:/PuppetLab/src/boxes/precise32.box
==> box: Adding box 'precise32' (v0) for provider:
    box: Downloading: file:///F:/PuppetLab/src/boxes/precise32.box
    box: Progress: 100% (Rate: 1200k/s, Estimated time remaining: --:--:--)
==> box: Successfully added box 'precise32' (v0) for 'virtualbox'!

3

먼저 Vagrantfile의 이름을 바꾼 다음

vagrant box add new-box name-of-the-box.box
vagrant init new-box
vagrant up

상태를 확인하기 위해

vagrant status

그게 다야


3

다운로드 한 박스를 추가하는 대신 메타 데이터가있는 json 파일을 생성 할 수 있습니다. 이렇게하면 몇 가지 추가 세부 정보를 적용 할 수 있습니다. 예를 들어 상자를 가져오고 해당 버전을 지정하려면 파일을 만듭니다.

{
  "name": "laravel/homestead",
  "versions": [
    {
      "version": "7.0.0",
      "providers": [
        {
          "name": "virtualbox",
          "url": "file:///path/to/box/virtualbox.box"
        }
      ]
    }
  ]
}

그런 다음 vagrant box add매개 변수로 명령을 실행하십시오 .

vagrant box add laravel/homestead /path/to/metadata.json

1

다른 케이스에 대한 설명을 추가하기 위해. 여러 Ubuntu 머신에 유사한 Vagrant Ubuntu 18.04 기반 구성을 설치해야합니다. 사용하여 하나에 다운로드 bionic64 상자 vagrant upVagrantfile이 상자가 지정된 곳은, 다음 폴더를 복사 .vagrant.d/boxes/ubuntu-VAGRANTSLASH-bionic64다른 사람에게.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.