Docker文档阅读笔记-How to Commit Changes to a Docker Image with Examples

介绍

在工作中使用Docker镜像和容器,用得最多的就是如何提交修改过的Docker镜像。当提交修改后,就会在原有的镜像上创建一个新的镜像。

本博文说明如何提交一个新的Docker镜像。

前提

①有一个可以直接访问服务器的运行终端;

②帐号需要root权限;

③已经安装并且配置好了docker

手把手教提交修改后的Docker镜像

step 1:pull Docker镜像

在修改镜像前需要一个基础镜像,本文以ubuntu为例,先拉取ubuntu的镜像,然后对这镜像进行修改。

bash 复制代码
sudo docker pull ubuntu

随后查下看下是否有ubuntu镜像。

bash 复制代码
sudo docker images

拷贝这个镜像ID,后面会使用到

step2:部署容器

执行下面的命令将容器跑起来:

bash 复制代码
sudo docker run -it cf0f3ca922e0 bin/bash

-it选项是指启动交互模式,并且能使用键盘输入功能。这样就能进入到ubuntu的容器中执行命令了。

step 3:修改容器

现在在容器中安装nmap软件

bash 复制代码
apt-get install nmap

执行这条命令后会在容器中安装此软件

安装完成后可以查看下nmap的版本。

bash 复制代码
nmap --version

此处输出的Nmap版本是7.60。

此时修改完成了,退出

bash 复制代码
exit

输入以下命令显示启动过的镜像:

bash 复制代码
sudo docker ps -a

从中可以看到容器ID,拿到这个ID后进行保存就可以了。

step4:提交修改的镜像

语法如下:

bash 复制代码
sudo docker commit [CONTAINER_ID] [new_image_name]

所以本例的命令如下:

bash 复制代码
sudo docker commit deddd39fa163 ubuntu-nmap

deddd39fa163 :容器ID

ubuntu-nmap:镜像名

此时查看下镜像,就能看到刚刚新加的了。

bash 复制代码
sudo docker images
相关推荐
Patrick_Wilson15 小时前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
Suroy1 天前
DockerView-Go:用 Go 写一个终端 Docker 监控工具,顺便做了个 Web 仪表盘
docker
云恒要逆袭1 天前
运行你的第一个Docker容器
后端·docker·容器
宋均浩2 天前
# Docker 镜像瘦身实战:从 1.2G 到 80MB 的五个优化步骤
ci/cd·docker
程序员老赵3 天前
10 分钟部署 OpenCode:Docker 一键安装,浏览器打开就能用 AI 写代码(附完整命令与排错)
docker·容器·ai编程
WangMingHua1113 天前
LM Studio Docker 部署——本地大模型一键启动
docker
曲幽4 天前
别再用网页翻译看源码了!你的私人翻译神器LibreTranslate,部署避坑指南来了
python·docker·web·pot·translate·libretranslate·arogstranslate
LinXunFeng4 天前
Obsidian - 使用 Share Note 分享笔记并自部署
前端·笔记·github
武子康6 天前
调查研究-183 Apple container:Mac 上用轻量 VM 跑 Linux 容器,Swift 会改写本地容器体验吗?
docker·容器·apple
Alsn869 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker