50

precision32 ボックスをインポートしてから、いくつかのパッケージとその他のデータを VM にインストールしました。私の計画は、共有時に複雑なプロビジョニングを節約するために、ボックスに再パッケージ化することです.

でも。

vagrant package --base dev-vm --output /box/vm.box

常に戻ります

[dev-vm] VM not created . Moving on

私のディレクトリ構造は次のとおりです。

-dev-vm
    --.vagrant
    --Logs
    --box.ovf
    --box-disk1.vmdk
    --dev-vm_13345342.vbpx
    --metadata.json
    --Vagrantfile

アイブ

 set VAGRANT_LOG=debug

何が起こっているのかについての追加情報は表示されません。

Cygwin を使用する Windows 7

アップデート:

 export VAGRANT_LOG=debug

Cygwin でデバッグ ログを設定します。

私はそれから得る

 DEBUG subprocess: Waiting for process to exit. Remaining to timeout: 32000
 DEBUG subprocess: Exit status: 0
 INFO warden: Calling action: #<Vagrant::Action::Builtin::Call:0x2abb800>
 INFO runner: Running action: #<Vagrant::Action::Builder:0x2695920>
 INFO warden: Calling action: #<VagrantPlugins::ProviderVirtualBox::Action::Created:0x267c078>
 INFO runner: Running action: #<Vagrant::Action::Warden:0x2ac6c48>
 INFO warden: Calling action: #<VagrantPlugins::ProviderVirtualBox::Action::MessageNotCreated:0x2ac6c00>
 INFO interface: info: VM not created. Moving on...
4

2 に答える 2

83

ボックスをパッケージ化する場合、ボックス名は、VirtualBox から取得できる特定のマシン名にする必要があります (例: lucid_1372711888)。cmd で次のコマンドを実行するだけです。

vboxmanage list vms

「vboxmanage」を事前に PATH 変数に追加する必要があることに注意してください。その方法はこちらをご覧ください。

また、仮想マシン名にスペースを含めないでください。そうしないと、「vagrant package」コマンドで認識されません。例えば:

vagrant package --base win7_vbox_base --output win7_base.box #CORRECT
------------------------------------------------------------------------
vagrant package --base win7 vbox base --output win7_base.box #INCORRECT
于 2013-07-26T15:13:09.663 に答える
13

Vagrantfile を含むフォルダーにいる場合は、次を実行することもできます。

vagrant package --output your-box-name.box

次の図は、このコマンドで作成された .box ファイルの内容を示しています。

.box のアンパケット

于 2016-03-30T08:26:17.007 に答える