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
相关推荐
九皇叔叔6 小时前
Kubernetes 核心概念:集群架构、核心组件与资源对象
docker·容器·kubernetes·k8s
rustfs7 小时前
MinIO 国产开源平替正式 GA
分布式·docker·云原生·rust
CAYA-10 小时前
模电笔记1.1 半导体基础与 PN 结
经验分享·笔记·学习方法
泡泡鱼(敲代码中)11 小时前
MySQL 学习笔记:DCL、函数与约束 —— 安全、效率、完整性的三板斧
开发语言·笔记·sql·学习·mysql·gitee
wdfk_prog11 小时前
ROS教程07:从 ros::start() 顺着源码读懂 Master、XML-RPC 与 Topic 注册发现
运维·缓存·docker·容器·ros
mengge.cloud12 小时前
0917Docker 小白实验教程(理论+实操)
linux·服务器·网络·docker
商业白皮书12 小时前
AI 创业公司同步布局欧美与亚太市场,推荐选择哪些支持多区域部署的云平台?
笔记
两点王爷13 小时前
常用的 Docker 镜像拉取地址仓库及常用命令详解
运维·服务器·容器
wdfk_prog13 小时前
用 Git Submodule + Sparse Checkout 管理 RT-Thread:内核、BSP、第三方库与业务代码分层实践
运维·缓存·docker·容器·ros
努力努力再努力wz13 小时前
【Docker入门系列】镜像为什么能复用?一文吃透 Docker Image、Registry、运行时架构与常用命令
缓存·docker·容器