【docker常用命令系列】Docker container commit用法描述选项示例

Dockercontainercommit用法及选项示例
本文详细介绍了如何使用Dockercontainercommit命令将容器的更改提交为新的镜像,包括选项说明、示例以及与Dockerfile管理镜像的比较。

Docker container commit用法描述选项示例

容器的更改提交为一个新镜像

用法

docker container commit [OPTIONS] CONTAINER REPOSITORY[:TAG]

描述

使用 docker container commit 命令可以将容器的更改提交为一个新的镜像。这个命令非常有用,可以在容器中进行文件更改或配置修改后,将其保存为一个独立的镜像

需要注意的是,通常情况下更推荐使用 Dockerfile 来管理和构建镜像,因为它更加可维护和可重复。

选项

选项默认值描述
–author设置新镜像的作者信息
–message提交时的说明信息
–change应用 Dockerfile 指令到新镜像(如 ENV、CMD 等)

示例

docker container commit c16378f943fe rhel-httpd:latest

上述示例将容器 c16378f943fe 的更改提交为一个名为 rhel-httpd 版本为 latest 的新镜像。

注意:在命名镜像时,只允许使用小写字母、数字和连接符(-)。

这样做后,可以通过运行以下命令来验证新镜像是否创建成功:

docker images

你应该能够看到列出的镜像中包含了 rhel-httpd:latest

`docker commit` 可把容器保存成新镜像,不过其生成的镜像信息不够透明,除制作者外他人难以知晓生成过程,一般建议用 `Dockerfile` 制作镜像,`docker commit` 常用于被入侵后保存现场等情况 [^1]。 下面是 `docker commit` 命令的详细使用指南: 1. **基本语法**:`docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]` - `OPTIONS`:可添加额外参数,如 `-a`(指定提交的作者)、`-m`(添加提交说明)等。 - `CONTAINER`:要提交的容器 ID 或名称。 - `[REPOSITORY[:TAG]]`:新镜像的仓库名和标签,可选。 2. **示例操作** - **启动容器**:使用 `docker run` 命令启动一个容器,例如 `docker run -d --name adaptor cb78f0d452af`,其中 `cb78f0d452af` 是镜像 ID [^2]。 - **进入容器并操作**:通过 `docker exec` 命令进入容器内部,如 `docker exec -ti 966297c4ca47 /bin/sh`,在容器内进行操作,如创建文件 `touch test.txt` [^2]。 - **提交容器为新镜像**:退出容器后,使用 `docker commit` 命令提交容器,例如 `docker commit adaptor`,执行后会返回新镜像的 ID [^2]。 - **查看新镜像**:使用 `docker images` 命令查看刚才提交的镜像 [^2]。 - **使用新镜像启动容器**:用新镜像启动一个新容器,如 `docker run -d --name adaptor2 56997aaf0461`,进入新容器内部验证操作是否正常,如 `ls` 查看是否存在之前创建的文件 [^2]。 3. **添加作者和说明信息** 使用 `-a` 和 `-m` 参数添加提交的作者和说明信息,示例如下: ```bash docker commit -a "runoob.com" -m "my apache" a404c6c174a2 mymysql:v1 ``` 此命令将容器 `a404c6c174a2` 保存为新镜像 `mymysql:v1`,并添加了作者信息和说明信息 [^3]。 4. **命令调用流程** `docker commit` 命令的调用流程为:`CmdCommit(api/client/command.go) --> PostCommit(api/server/server.go) --> ContainerCommit(server/server.go)` [^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BigDataMLApplication

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值