微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

docker 修改容器内容后更新镜像的流程

在 Docker 中,如果你修改一个容器的内容并希望将这些更改保存为一个新的镜像,可以按照以下步骤进行:
docker version: 26.1

1. 确保容器运行

首先,确保你正在修改的容器是运行中的。如果容器已经停止,你需要启动它:
docker start <container_id>

2. 进入容器并进行修改(如果尚未修改

你可以使用 docker exec 命令进入运行中的容器并进行所需的修改。例如,进入容器并使用 shell:
docker exec -it <container_id> /bin/bash
在容器中完成所需的更改(如安装软件、修改配置文件等)。

3. 生成镜像

提交容器生成镜像

1. 提交镜像

完成修改后,你需要将这些更改提交为一个新的镜像。使用 docker commit 命令来完成这一操作:
docker commit <container_id> <new_image_name>:<tag>
<container_id>:你的容器的 ID 或名称
<new_image_name>:你想为新镜像指定的名称
:镜像的标签(可选,但推荐使用)。如果不指定,标签是 latest。
例如,提交容器 my_container 为名为 my_new_image 的新镜像,并标记为 v1.0:
docker commit my_container my_new_image:v1.0

2. 验证新镜像

你可以使用 docker images 命令来验证新镜像是否创建成功:
docker images

3. 使用新镜像

现在,你可以使用新的镜像来创建新的容器:
docker run -d <new_image_name>:<tag>
例如,使用之前创建的镜像 my_new_image:v1.0:
docker run -d my_new_image:v1.0

容器直接导出镜像

1 确定容器

image


如图所示,我们使用容器id为df8c的容器导出,对应的命令为:
docker export -o file_name.tar df8cae66ae57
其中,file_name 为自定义的名字。

2 验证镜像并使用

将镜像再次导入docker import file_name.tar image_name:tag
其中file_name为对应的名字,image_name为镜像的名字,tag对应版本信息。
docker run -itd --name=docker_name --gpus "device=0" --shm-size=16g -p 7112:7100 --restart=always --privileged -v /tmp:/tmp image_name:tag /bin/bash -c "bash"
其中,docker_name为对应的容器的名字,image_name为对应的镜像的名字,tag为版本信息。

总结

修改容器:可以进入容器并进行所需的修改
提交为镜像:使用 docker commit 将修改提交为新的镜像。
验证和使用:检查新镜像并使用它来创建新容器。

原文地址:https://www.cnblogs.com/kevinarcsin001/p/18377598

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐