こんな記事を見たので、LXDで試しに使ってみました。 コンテナーでの比較なので、カーネルなにがしの利点は関係ありません。
https://wiki.ubuntu.com/Minimal
Ubuntu 18.04にLXDをインストールして、lxd init
コマンドで初期設定済みである前提とします。
LXDは3.0.1/stableをつかいました。
それぞれ次のようにコマンドを実行しました。
Ubuntu $ lxc launch ubuntu:bionic first Ubuntu-minimal $ lxc remote add --protocol simplestreams ubuntu-minimal https://cloud-images.ubuntu.com/minimal/releases/ $ lxc launch ubuntu-minimal:bionic second
イメージサイズは次の通りでした。その差は80.38MB。 小さい方がイメージのインポート、更新に要する時間を削減できます。思ったより標準イメージも小さいですね。
$ lxc image list -c ds +-----------------------------------------------------+----------+ | DESCRIPTION | SIZE | +-----------------------------------------------------+----------+ | ubuntu 18.04 LTS amd64 (minimal release) (20180705) | 92.76MB | +-----------------------------------------------------+----------+ | ubuntu 18.04 LTS amd64 (release) (20180617) | 173.14MB | +-----------------------------------------------------+----------+
両イメージでもbashを利用可能のようです。ただし、Minimal Imageにはvimやbusyboxはインストールされていませんでした。 まあ、テキストファイルの生成はechoで頑張ればなんとか。
$ lxc exec first bash root@first:~# which vim busybox /usr/bin/vim /bin/busybox $ lxc exec second bash root@second:~# which vim busybox root@second:~#
Minimal imageはロケールとして「en_US.utf8」が削られているようです。manパッケージもインストールされていませんでした。
$ lxc exec first -- locale -a C C.UTF-8 POSIX en_US.utf8 $ lxc exec second -- locale -a C C.UTF-8 POSIX $ lxc exec first -- man --version man 2.8.3 $ lxc exec second -- man --version