作为每次测试运行的一部分,我们需要创建新的ubuntu lxc并安装10-15个软件包(使用apt-get install和pip install)。安装额外的软件包会增加5分钟的运行时间。是否可以预先安装这些软件包的自定义lxc映像。我不想做lxc-clone和lxc-snapshot,因为我想保持lxc接口附加的网络非常动态。
这是否适用于lxc,我应该切换到docker。
提前致谢
答案 0 :(得分:0)
是的,它是可行的;首先,创建映像,然后安装所有必需的组件,然后使用fakeroot,cpio等命令创建initramfs.gz;
遵循此(备份):
$ cd /var/lib/lxc/C1/rootfs
$> find . | fakeroot -i fakeroot.env -s fakeroot.env -- cpio -o -H newc | gzip >"/home/<user>/initramfs.gz"
如果要创建新的lxc(如还原),请执行以下操作。
遵循此(恢复):
$ mkdir -p /var/lib/lxc/C2/rootfs
$ cd /var/lib/lxc/C2/rootfs
$ cp /home/user/initramfs.gz
$ gunzip initramfs.gz
$ cpio -i < initramfs
$ rm initramfs
$ cp /var/lib/lxc/C1/config /var/lib/lxc/C2/config
现在编辑复制的配置文件以获得新的UTS名称&#34; C2&#34;以及C2所需的其他事项;