web-dev-qa-db-ja.com

インストールISOからカスタムLXDイメージを構築する方法

オペレーティングシステムのインストールISOを持っています。私の目標は、LXDを実行しているUbuntu Hostのカーネルの上で2番目のオペレーティングシステムを実行することです。上記のオペレーティングシステムのベースイメージが見つかりません。カスタムlxcイメージをビルドしてubuntuカーネル上で実行し、2番目のシステムのシェルにアクセスすることは可能ですか?

よろしくお願いします。

2
John Mayer

StéphaneGraberが記事でLXD 2.0以降のイメージを最初から作成する手順について説明しました LXD 2.0:Image management (section "Manually building a image"):

画像を手動で構築する

独自のイメージを構築することも非常に簡単です。

  1. コンテナファイルシステムを生成します。これは、使用しているディストリビューションに完全に依存します。 UbuntuとDebianの場合は、debootstrapを使用します。
  2. コンテナでディストリビューションが正しく機能するために必要なものを構成します(必要な場合)。
  3. そのコンテナファイルシステムのtarballを作成し、オプションで圧縮します。
  4. 上記のファイルに基づいて、新しいmetadata.yamlファイルを作成します。
  5. そのmetadata.yamlファイルを含む別のtarballを作成します。
  6. これらの2つのtarballをLXDイメージとしてインポートします。

    lxc image import <metadata tarball> <rootfs tarball> --alias some-name
    

すべてが機能する前に、これを数回実行し、あちこちで微調整し、場合によってはテンプレートとプロパティを追加する必要があります。

ファイルmetadata.yamlには、少なくとも次の2つのキーと値のペアが含まれている必要があります(i686を正しいシステムアーキテクチャで置き換え、1458040200をUnixエポック形式のタイムスタンプで置き換えます(例:date +%s ):

architecture: "i686"
creation_date: 1458040200

metadata.yamlの詳細については、上記の記事(セクション「イメージメタデータ」)を参照してください。

2
Ansgar Wiechers