イメージを作成するには#

独自のイメージを作成し共有したい場合、既存のインスタンスやスナップショットをベースにすることもできますし、一から独自のイメージを作ることもできます。

インスタンスやスナップショットからイメージを発行する#

インスタンスやインスタンススナップショットを新しいインスタンスのベースとして使いたい場合、それらからイメージを作成し発行するのが良いです。

インスタンスからイメージを発行するには、インスタンスが停止されていることを確認してください。 次に以下のコマンドを入力します。

lxc publish <instance_name> [<remote>:]

スナップショットからイメージを発行するには、以下のコマンドを入力します。

lxc publish <instance_name>/<snapshot_name> [<remote>:]

どちらの場合も--aliasフラグで新しいイメージにエイリアスを設定し、--expireで有効期限を設定し、--publicでイメージを公開状態にすることができます。 同じ名前のイメージがすでに存在する場合は、--reuseフラグを追加して上書きします。 利用可能な全てのフラグ一覧はlxc publish --helpを参照してください。

発行のプロセスはインスタンスやスナップショットからtarballを生成した後圧縮するため、かなりの時間がかかるかもしれません。特にI/OとCPUの負荷が高いため、発行の操作はLXDで直列化(訳注:1つずつ順に実行)されます。

発行用にインスタンスを準備する#

インスタンスからイメージを発行する前に、イメージに含めるべきでない全てのデータをクリーンアップしてください。 通常、これは以下のデータを含みます。

  • インスタンスメタデータ(編集にはlxc config metadataを使ってください)

  • ファイルテンプレート(編集にはlxc config templateを使ってください)

  • インスタンス自身の内部のインスタンスに特有なデータ(例えば、ホストのSSH鍵とdbus/systemd machine-id)

イメージをビルドする#

独自イメージをビルドするには、distrobuilderが使用できます。

インストール手順とツールの使い方はdistrobuilderのドキュメントを参照してください。