在notebook中通过镜像保存功能制作自定义镜像-九游平台
通过预置的镜像创建notebook实例,在基础镜像上安装对应的自定义软件和依赖,在管理页面上进行操作,进而完成将运行的实例环境以容器镜像的方式保存下来。镜像保存后,默认工作目录是根目录“/”路径。
保存的镜像中,安装的依赖包不丢失,持久化存储的部分(home/ma-user/work目录的内容)不会保存在最终产生的容器镜像中。vs code远程开发场景下,在server端安装的插件不丢失。

当镜像保存失败时,请在notebook实例详情页查看事件,事件描述请参考查看notebook实例事件。
建议保存的镜像大小不要超过35g,镜像层数不要超过125层,因为节点容器存储rootfs差异(详细请参考容器引擎空间分配),可能会导致镜像保存失败。
- 如使用的是专属资源池,可尝试在“专属资源池>弹性集群”页面按需调整容器引擎空间大小,具体步骤请参考扩缩容专属资源池的“修改容器引擎空间大小”。
- 如果问题仍未解决,请联系九游平台的技术支持。
前提条件
notebook实例状态为“运行中”。
保存镜像
- 在notebook列表中,对于要保存的notebook实例,单击右侧“操作”列中的 ,进入“保存镜像”对话框。
图1 保存镜像
- 在保存镜像对话框中,设置组织、镜像名称、镜像版本和描述信息。单击“确定”保存镜像。
在“组织”下拉框中选择一个组织。如果没有组织,可以单击右侧的“立即创建”,创建一个组织。创建组织的详细操作请参见创建组织。
同一个组织内的用户可以共享使用该组织内的所有镜像。
- 镜像会以快照的形式保存,保存过程约5分钟,请耐心等待。此时不可再操作实例。
图2 保存镜像
快照中耗费的时间仍占用实例的总运行时长,如果在快照中时,实例因运行时间到期停止,将导致镜像保存失败。
- 镜像保存成功后,实例状态变为“运行中”,用户可在“镜像管理”页面查看到该镜像详情。
- 单击镜像的名称,进入镜像详情页,可以查看镜像版本/id,状态,资源类型,镜像大小,swr地址等。
基于自定义镜像创建notebook实例
从notebook中保存的镜像可以在镜像管理中查询到,可以用于创建新的notebook实例,完全继承保存状态下的实例软件环境配置。
方式一:在notebook实例创建页面,镜像类型选择“自定义镜像”,名称选择上述保存的镜像。

方式二:在“镜像管理”页面,单击某个镜像的镜像详情,在镜像详情页,单击“创建notebook”,也会跳转到基于该自定义镜像创建notebook的页面。
镜像保存时,哪些目录的数据可以被保存
- 可以保存的目录:包括容器构建时静态添加到镜像中的文件和目录,可以保存在镜像环境里。
例如:安装的依赖包、“/home/ma-user”目录
- 不会被保存的目录:容器启动时动态连接到宿主机的挂载目录或数据卷,这些内容不会被保存在镜像中。可以通过df -h命令查看挂载的动态目录,非“/”路径下的不会保存。
例如:持久化存储的部分“home/ma-user/work”目录的内容不会保存在最终产生的容器镜像中、动态挂载在“/data”下的目录不会被保存。
常见问题
- 镜像保存时报错“there are processes in 'd' status, please check process status using 'ps -aux' and kill all the 'd' status processes”如何解决?
- 镜像保存时报错“container size %dg is greater than threshold %dg”如何解决?
- 保存镜像时报错“too many layers in your image”如何解决?
- 镜像保存时报错“the container size (xg) is greater than the threshold (25g)”如何解决?
相关文档
意见反馈
文档内容是否对您有帮助?
如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨