理解
- 启动docker容器时,它应该有一个前台进程,否则容器将立即停止。
- 如果在Dockerfile中启动了前台进程,则构建步骤将无法完成。
- run = create + start
- exec只能在容器运行时使用
- run的一个参数是要在容器内执行的命令。 start不支持这样的命令。
基于以上所述,我提出以下建议:
- 构建映像:Dockerfile将仅包含环境创建步骤(安装软件,创建文件夹类步骤)
- 首次使用容器:run将与命令(或图像中的脚本)一起使用以启动前台进程
- 后续使用:使用start启动容器
这是一种可接受的方式吗?如果没有,我需要做出哪些更正?谢谢。