4

package.box という名前のカスタム ボックスがあります。vagrant up、vagrant box add をしようとすると、このエラーが発生します。さまざまな構成で metadata.json ファイルを作成しましたが、うまくいきませんでした。このメッセージがわかりません。プロビジョニングにはvirtualboxを使用しています。

metadata.json ファイルに関する Web サイトのドキュメントがわかりません。

ボックス「package.box」の「metadata.json」ファイルが見つかりませんでした。 Box は、Vagrantが作成されたプロバイダー
を判別するために、このファイルを必要とします。
ボックスを作成したら、
「metadata.json」ファイルを追加してください。他の誰かがボックスを作成した場合
は、ボックスの作成者にボックスが破損していることを通知してください。ボックス ファイル形式のドキュメントは
、次の URL にあります。
https://www.vagrantup.com/docs/boxes/format.html

package.box は空のディレクトリにあります。その隣に、次の metadata.json ファイルを配置します。

{
    "description": "long box description",
    "short_description": "short box description",
    "name": "company/developer-environment",
    "versions": [{
        "version": "1",
        "status": "active",
        "description_html": "<p>Dev Environment</p>",
        "description_markdown": "Dev Environment",
        "providers": [{
            "name": "virtualbox",
            "url": "./package.box"
        }]
    }]
}

ubuntu 16.04 システム、vagrant 1.8.5、virtualbox 5.0.26 を使用しています。

4

2 に答える 2

4

package.boxファイルは VM の zip ファイルです。このファイルmetadata.jsonは package.box ファイルの隣ではなく、その中にある必要があります。

ボックスをパッケージ化する前に、メタデータ ファイルを VM ファイルの隣に保存します。

.
|-- box-disk1.vmdk
|-- box.ovf
|-- metadata.json

そのため、実行vagrant packageすると、メタデータ ファイルがボックス ファイルの一部として含まれます。

于 2016-07-26T21:03:18.543 に答える