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
相关推荐
Cloud_Shy61810 小时前
解读《Effective Python 3rd Edition》:从练气到老魔(第五章 Item 33 - 35)
开发语言·人工智能·笔记·python·学习方法
正经教主10 小时前
【docker基础】第五课:Docker网络详解
运维·docker·容器
做cv的小昊10 小时前
计算机图形学:【Games101】学习笔记08——光线追踪(辐射度量学、渲染方程与全局光照、蒙特卡洛积分与路径追踪)
图像处理·笔记·学习·计算机视觉·游戏引擎·图形渲染·概率论
星恒随风10 小时前
C++ 类和对象入门(五):初始化列表、explicit 和 static 成员详解
开发语言·c++·笔记·学习·状态模式
鹤鸣的日常12 小时前
前端运行时动态环境变量方案
前端·react.js·docker·前端框架·vue·gitlab
伊布拉西莫15 小时前
【流畅的Python】第20章:并发执行器 — 学习笔记
笔记·python·学习
我是谁??15 小时前
ubuntu22.04 通过docker部署vLLM(Qwen3-0.6B)大模型+New API+OpenWebUI
docker·容器·vllm
运维瓦工15 小时前
DevOps 生态介绍(十):Docker Compose 核心 YAML 配置详解与常用命令大全
spring cloud·docker·容器
云烟成雨TD16 小时前
Spring AI 1.x 系列【59】容器化开发支持:Docker Compose 与 Testcontainers
人工智能·spring·docker
Plastic garden16 小时前
K8s(10)NFS 的动态 PV 创建数据库给k8s的mysql和redis
docker·容器·kubernetes