lxcテンプレートをどのように変更しますか?

lxcテンプレートをどのように変更しますか?

私は通常、次のようにコンテナを作成します。

lxc-create -n mycontainer -t debian

しかし、いくつかのプロジェクトを「debian」のデフォルトテンプレートに適用したいと思います。

  1. 私のSSHキーを使用する新しいユーザー、sudoにパスワードは必要ありません。
  2. Pythonはすでにインストールされています。

デフォルトでは、これはAnsibleに必要な基本フレームワークです。それからAnsibleを通してそこから私のコンテナを整理したいと思います。

ただし、lxc テンプレートをカスタマイズする方法に関する情報が見つかりません。最初からテンプレートを作成する方法についていくつかのチュートリアルを見ましたが、それは私がやりたいことではありません。既存のテンプレートを簡単にカスタマイズしたいです。

ホストとゲストの両方のオペレーティングシステムはdebian 8です。

ありがとうございます!

答え1

パッケージを追加するには、次を編集します。

/usr/share/lxc/templates/lxc-debian

download_debian()他のパッケージと一緒にそのセクションにパッケージを追加します(ifupdown、ロケールなどが表示されます)。パッケージのリストを変更する場合は、キャッシュを消去する必要があります。私は次のようにしてこれを行います。

rm -rf /var/cache/lxc/debian/

もちろん、次回コンテナからパッケージをダウンロードするのに時間がかかります。

コンテナでコマンドを実行するには、次を追加します。

chroot $rootfs <command>

最後にconfigure_debian()…ホストからホストにファイルをコピーすることもできます$rootfs

関連情報