我自己的boot2docker自定义不反映到ISO映像
在制作自定义的boot2docker ISO部分之后 ,我编写了下面的Dockerfile来安装vim包:
FROM boot2docker/boot2docker RUN apt-get update && apt-get install -y vim RUN /make_iso.sh CMD ["cat", "boot2docker.iso"]
然后成功执行这些命令:
docker build -t my-boot2docker-img . && docker run --rm my-boot2docker-img > boot2docker.iso
我使用这个ISO映像创build了一个虚拟机并login到它。 我期望vim现在可以在我的shell中使用,但事实并非如此。 从构build进程控制台日志,我看到vim安装成功。 但显然不包含在iso中。
有人可以告诉我,我在这里错过了什么?
您只在生成最终的boot2docker iso的构build容器中安装vim。 要获得所需的结果,您需要在构build容器中的$ROOTFS
上安装任何包/数据。 有关如何使用apt-get
来完成此操作的一些提示,请参阅此答案 。
但是,首先你应该问自己,为什么你需要一个虚拟机中的vim,它只能作为mac / windows用户的透明代理。
编辑:
正如你有正当的理由build立你自己的boot2docker iso,看看boot2docker回购 。
dockerfile分解了:
- 在构build容器中安装构build依赖关系
- 下载并编译一个带有aufs支持的linux内核,拷贝到
$ROOTFS
- 在
$ROOTFS
下载并提取TinyCore发行$ROOTFS
- 下载并提取
$TCZ_DEPS
定义的TinyCore包到$ROOTFS
- 在
$ROOTFS
构build和安装VMware工具和其他帮助$ROOTFS
- 将
$ROOTFS
导出为新的iso
我可能会首先考虑扩展第4步 ,即从TinyCore回购下载包。