動作環境¶
Go¶
Incus は Go 1.25 以上を必要とし、Go 言語のコンパイラのみでテストされています。
ビルドには最低 2GB の RAM を推奨します。
必要なカーネルバージョン¶
サポートされる最小のカーネルバージョンは 6.12 です。
Incus には以下の機能をサポートするカーネルが必要です。
Control Groups (
blkio、cpuset、devices、freezer、memory、pids)Namespaces (
cgroup、ipc、pid、mount、net、user、uts)Seccomp
Native Linux AIO (
io_setup(2)など)
以下のオプションの機能はさらなるカーネルオプションを必要とします。
AppArmor
CRIU (正確な詳細は CRIU のアップストリームを参照のこと)
SELinux
さらに使用している Incus のバージョンで必要とされるほかのカーネルの機能も必要です。
LXC¶
Incus は以下のビルドオプションでビルドされた LXC 6.0.0 以上を必要とします。
apparmor(もし Incus の AppArmor サポートを使用するのであれば)(最低バージョン:3.0.0)seccompselinux(もし Incus の SELinux サポートを使用するのであれば)
コンテナ内のリソース消費を適切にレポートするために、LXCFSのインストールを強く推奨します。
OCI¶
OCIコンテナを動かすには、レジストリとのやり取りのためにIncusは現状ではskopeoに依存しています。
QEMU¶
仮想マシンを利用するには QEMU 8.2 以降が必要です。
virtiofsdを使用する場合、virtiofsdのRustでのリライトのみサポートされます。
ネットワーク¶
ネットワークに関するツールの最小バージョンは以下のとおりです:
nftables: 1.0.0dnsmasq: 2.90
IncusでOVNネットワークを使う際に必要なOVSとOVNの最小バージョンは以下のとおりです:
openvswitch: 2.15.0ovn: 23.03.0
ストレージ¶
ストレージドライバーの最小バージョンは以下のとおりです:
zfs: 2.1.0lvm: 2.03.11linstor-drbd: 9.0truenas-incus-ctl: 0.7.7
追加のライブラリ(と開発用のヘッダ)¶
Incus はデータベースとしてcowsqlを使用しています。
ビルドしセットアップするためにはmake depsを実行してください。
Incus はほかにもいくつかの (たいていはパッケージ化されている)C ライブラリを使用しています。
libacl1libcap2libuv1(cowsqlで使用)libsqlite3>= 3.25.0(cowsqlで使用)
ライブラリそのものとライブラリの開発用ヘッダ (-dev パッケージ)のすべてをインストールしたことを確認してください。