Packer

Mitchell Hashimoto

Packer

ここ2か月、私は新しいものの開発に没頭してきました。まだ残っている作業はたくさんありますが、これまで取り組んできたことを皆さんにお見せする時が来たと思っています。本日、Packerを発表します。複数のプラットフォーム向けにマシンイメージを作成するオープンソースツールです。

packer_banner.png

Packerは、AMIやVirtualBoxイメージ、Vagrantボックスなどのマシンイメージを作成するオープンソースツールです。Packerは、テンプレートという単一の移植可能な入力形式を使って、複数のプラットフォーム向けのイメージを並列に生成します。そのため、同一のAMIやVMwareマシンなどを一度に作成できます。これにより、さまざまな興味深い用途が可能になります。

マシンイメージは強力な概念ですが、従来の周辺ツールは、現代のクラウドインフラが可能にしたアジャイルなワークフローに追いついていません。Packerを使えば、マシンイメージの作成を自動化して高速化でき、業界標準のDevOpsツールとも連携できます。Packerは、たとえば次のような用途に使えます。

  • 本番環境で使用するAMI(またはその他のマシンイメージ)を、継続的デリバリーパイプラインの一部として自動的に作成する。

  • 本番環境向けのAMIと、開発環境向けのVagrantボックスを、ほぼ同一の内容で同時に作成する。

  • ソフトウェアアプライアンスを、複数のプラットフォーム向けであっても、自動化された再現可能な方法でビルドする。ソフトウェアのデモや、すぐに使えるイメージを、どのプラットフォームを使う人の手にも届けることが、これまでになく簡単になります。

そして、ほかにもまだまだあります!Packerは汎用的なイメージビルドツールです。Packerを中心に構築できるものの可能性は無限にあります。皆さんがPackerをどのように使うのか、今から楽しみです。

本日の発表にあわせて、誰でもPackerを試してみること、そしてオープンソースプロジェクトに参加することを歓迎します。参加する方法はたくさんあります。なかでも特に楽しそうなのは、特定のプラットフォーム向けにイメージをビルドするコンポーネントである、より多くのビルダーを追加することかもしれません。すでにこのプロジェクトには何人かのコミッターが参加しており、さらに仲間を増やしたいと考えています。

念のためお伝えしておくと、本日リリースしたPackerのバージョンは0.1です。最初のリリースであり、今後は多くの改善がすぐに追加される予定です。その点を踏まえて、フィードバックを寄せたりプロジェクトを評価したりしてください。Vagrantのバージョン0.1をリリースした当時のことを思い出してください。Macでしか動かず、VirtualBoxでしか動かず、Ubuntuマシンしか実行できず、サーバーレスのChefでしか動作しませんでした。しかし、Vagrantコミュニティが成長するとともに機能も増え、今ではそうした制限はすべてなくなっています。Packerにぜひ欲しい機能があるなら、実装に取り組むか、メーリングリストで提案してください

原文は Mitchell Hashimoto により に公開されました。

この記事は「gpt-5.6-luna」を使用して翻訳されました。