通过已有容器创建
保留容器原镜像的配置参数
保留容器内更改或新增的文件,保留容器原镜像的运行参数。 通过容器详情页面中的【另存为镜像】功能将容器保存为镜像。

更改镜像配置参数
如容器基于 ubuntu、alpine 系统直接保存为镜像,会缺少 entrypoint、expose 等参数。 需通过导出、导入容器 Tar 包的方式构建镜像。
与 Dockerfile 构建的区别
Dockerfile 先记录命令,然后在构建时执行。而使用此方法是把执行结果转化成镜像。
容器中的持久化存储
导出容器时,持久化的目录无法被导出。多数情况下,此方法更适合从基础镜像开始构建自己的镜像。
镜像配置
CMD
通过导出容器创建镜像时,必须指定启动 CMD 命令,否则通过该镜像创建容器时无法正常启动。
WorkDir
配置导入后的镜像工作目录,一般会指定到程序运行的目录,例如 /app、/home。
暴露端口
配置导入后的镜像需要向外部暴露访问的端口,一行配置一个端口,例如:9000
环境变量
配置导入后的镜像需要用户配置的环境变量,一般用于配置数据库、redis 等外部依赖。
存储卷目录
配置导入后的镜像需要持久化存储的目录,一般用于配置附件存储目录。
