我们可以创建Docker镜像,并在没有Dockerfile的情况下将它们推送到Hub.为什么有一个Dockerfile很有用?它的优点是什么?Dockerfile创建是一个耗费时间很长的过程,只能由人工制作.我想知道基于基础映像,已提交映像和基于Dockerfile的映像之间的主要区别是什么.
Dockerfile用于通过在 docker 镜像上指定我们想要的所有步骤来实现工作自动化。
\n\n\nDockerfile 是一个文本文档,其中包含用户可以在命令行上调用以组装映像的所有命令。使用 docker\n 构建用户可以创建一个连续执行多个\n 命令行指令的自动构建。
\n
是的,我们可以创建 Docker 镜像,但是每次我们想要进行任何更改时,您都必须手动更改并测试并推送它。
\n\n或者,如果您将 Dockerfile 与 dockerhub 一起使用,那么它将自动重建并在每次修改时进行更改,如果出现问题,则重建将失败。
\n\nDockerfile 的优点
\n\nDockerfile 与 dockerhub 的优势
\n\nGithub或者Bitbucket 提交镜像和 Dockerfile 镜像的区别
\n\n提交的映像:它将容器\xe2\x80\x99s 文件更改或设置提交到新映像中。
\n\nUsage: docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]\nCreate a new image from a container\'s changes\n\n -a, --author= Author (e.g., "John Hannibal Smith <hannibal@a-team.com>")\n -c, --change=[] Apply Dockerfile instruction to the created image\n --help=false Print usage\n -m, --message= Commit message\n -p, --pause=true Pause container during commit\nRun Code Online (Sandbox Code Playgroud)\n\n调试容器并将更改的设置导出到另一个映像中是一个不错的选择。但是 docker 建议使用 dockerfile 请参阅此处,或者我们可以说提交是 docker 的版本控制或映像的备份。
\n\n\n\n\n提交操作将不包括容器内安装的卷中包含的任何数据。
\n\n默认情况下,正在提交的容器及其进程将在提交映像时暂停。这降低了在创建提交的过程中遇到数据损坏的可能性。如果不需要此行为,请将 \xe2\x80\x98p\xe2\x80\x99 选项设置为 false。
\n
基于 Dockerfile 的镜像:
\n\n它总是使用基础图像来创建新图像。假设如果您对 dockerfile 进行了任何更改,那么它将在新映像上应用所有 dockerfile 步骤并创建新映像。但提交使用相同的图像。
\n\n我的观点是,我们必须使用 dockerfile,它包含我们想要在映像上执行的所有步骤,但是如果我们从提交创建映像,那么我们必须记录我们所做的所有更改,如果我们想要创建新映像,我们可能需要这些更改,我们可以说dockerfile是镜像的文档。
\n| 归档时间: |
|
| 查看次数: |
709 次 |
| 最近记录: |