先安装官方incus


安装完后初始化

incus admin init

全部默认即可,其中有个服务器自动更新选no,还有个默认硬盘大小设置,可根据实际输入(默认12GB)。

初始化后导入镜像

镜像下载:https://github.com/oneclickvirt/incus_images

下载后需要修改一下镜像包的格式。

根目录格式

metadata.yaml
rootfs/
templates/

需要用的到命令:

解包镜像
unzip debian12.zip -d ./debian12
解包metadata.yaml
tar -xf incus.tar.xz
安装squashfs-tools工具
apt install squashfs-tools
解包rootfs
unsquashfs rootfs.squashfs
打包镜像
tar -cvf debian12.tar -C ./debian12 .
导入镜像
incus image import /debian12.tar
查看镜像指纹ID
incus image list

创建容器
incus launch 49f2e6a567c2(镜像包ID) debian12(容器名称)


端口映射
incus config device add debian12(容器名称) ssh-proxy(映射项目) proxy listen=tcp:0.0.0.0:10099(宿主机端口) connect=tcp:127.0.0.1:22(容器内部端口)


卸载流程:
apt-get remove --purge incus
apt-get autoremove
rm -rf /etc/incus
rm -rf /var/lib/incus
rm -rf /var/log/incus

收工

通过下面的命令,我们创建了一个名叫 data 的 disk 类型的 Device, 可以将宿主机上的 /src 目录挂载到容器 debian12 上的 /data 目录。

incus config device add debian12 data disk source=/src path=/data

通过 incus config device remove debian12 data 即可将其移除。

incus remote list
incus remote remove spiritlhl
incus remote add spiritlhl https://incusimages.spiritlhl.net --protocol simplestreams --public
incus image list spiritlhl:debian
incus remote list
incus launch spiritlhl:debian/12/cloud debian12