22

元の ISO から、OS インストール用の Vagrant .box ファイルの作成を自動化することは可能ですか?

私にとって、これは、Vagrant が提供する仮想マシンでのオペレーティング システムのインストールと構成のエンドツーエンドの自動化における大きなギャップです。

確かに、VagrantBox.es は、使用するための多くのベース .box OS インストール ファイルを提供します。ただし、元の OS ディストリビューション メーカーからではなく、サード パーティのサプライヤからのものもあります。たとえば Arch Linux: Arch Linux 64 (2012-07-02) http://vagrant.pouss.in/archlinux_2012-07-02.box

サードパーティ サプライヤの取り組みについて否定的になりたくはありませんが、組織によっては、元の OS プロバイダからの元のインストール イメージが必要になる場合があります (たとえば、上記の Arch の例の場合、これはhttps://www.archlinux.org/になります)。ダウンロード/ )。元のインストール イメージが必要な理由は、セキュリティ (セキュリティの侵害やマルウェアについてサード パーティのイメージを検証することができないため) であり、余分なものを必要とせずに元のサプライヤーが意図したイメージを取得するためです。別の理由は、元のサプライヤーから直接新しいリリースを利用し、サードパーティが Vagrant .box としてリリースするのを待つ必要がないことです。

.ISO イメージから .box ファイルを作成するためのガイドがあります。

しかし、これらは手動のステップであり、自動化と一貫性という Vagrant の背後にある哲学に反します。特に、多くの人がオリジナルを使用できるようにするという最終目標を達成したい場合、これは全員が重複して努力することになります。

したがって、ここでは、.ISO OS インストール イメージを Vagrant ボックスに変換するための一般的な自動化スクリプトを作成する方法を説明する決定的な回答から見ていきます。

4

1 に答える 1

25

VeeWee は、ISO から Vagrant ボックスを準備するための優れたメカニズムを提供すると思います。

https://github.com/jedi4ever/veewee

ほとんどのディストリビューションにすぐに使用できるテンプレートが多数用意されており、必要に応じてカスタマイズできます (多くの場合、これは必要ありません)。または、独自の定義を作成することもできます。

または、Packer を使用することもできます。

https://packer.io/

これは、Vagrant を作成しているのと同じ会社によって作成されているため、かなり優れた統合が行われています。Packer 自体はサンプル テンプレートを提供していないと思いますが、必要に応じて、Puppet Labs が独自のテスト目的で使用するものを使用できます。

https://github.com/puppetlabs/puppetlabs-packer

これは、独自のテンプレートの強固なベースとして使用して好みに合わせて変更したり、必要に応じてプロジェクトの PR を上げて貢献したりすることができます。

于 2013-03-06T09:44:00.997 に答える