docker制作镜像(1):利用docker commit制作镜像

本文介绍了如何在已有的mmdetection镜像基础上,通过docker run命令启动容器,安装vim和tmux,然后通过docker commit生成新的镜像,并将镜像推送到harbor仓库。重点在于实战操作和镜像管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

本篇博客介绍docker更新镜像:
在已经制作mmdetection镜像的基础上,安装vim与tmux包并生成新的镜像,最后推送到服务器habor上。


提示:以下是本篇文章正文内容。

一、docker的基本知识

首先要了解docker中的三个基本的概念:镜像image,容器container,仓库repository
镜像:就相当于是一个root文件系统,比如官方镜像ununtu:16.04就包含了完整的一套Ubuntu16.04最小系统的root文件系统。(参考,菜鸟教程
容器:镜像与容器的关系,就像是类和实例的关系(面向对象程序设计语言中),又像程序和进程的关系;镜像是静态的,容器是动态的,是镜像运行时的实体。
仓库:仓库可看成一个代码控制中心,用来保存镜像。

二、使用步骤

1.docker run 运行镜像

在已经制作完成mmdetection镜像的前提下:可以使用docker images查看镜像。

图片红色框中是已经制作完成的mmdetection的镜像;蓝色框是在mmdetection的镜像的基础上安装tmux与vim包更新的镜像
在更新镜像之前,我们需要使用镜像来创建一个容器。

(base) zz@ZZ:~$ docker run -t -i 211.82.236.15:8888/dc305/mmdet:1.0 /bin/bash
root@a3f9bba91837:/# 

root@a3f9bba91837表示已经进入到容器。

2.安装vim与tmux包

在安装各种包之前,需要在运行的容器中使用apt-get update命令进行更新。

代码如下(示例):

root@a3f9bba91837:/# apt-get update 
root@a3f9bba91837:/# apt-get install vim-gtk 
root@a3f9bba91837:/# apt-get install tmux

3.退出容器,docker commit 制作镜像

首先:退出容器

root@a3f9bba91837:/# exit

接着:使用docker commit命令,具体如下:

(base) zz@ZZ:~$  docker commit -m="vim&tmux" -a="dc305" e218edb10161 211.82.236.15:8888/dc305/mmdet:1.1

这里镜像制作完毕,可以使用docker images进行查看,如本文章中第一张图片中蓝色框中的镜像。

4.上传镜像

执行docker push 命令,将制作完成的镜像推送到服务器harbor中(镜像名称需符合相应的要求,否则需要docker tag进行重新标记,本文略过此步骤)
首先:登录服务器habor

(base) zz@ZZ:~$  docker login 211.82.236.15:8888

接着:执行docker push命令

(base) zz@ZZ:~$  docker push 211.82.236.15:8888/dc305/mmdet:1.1

这里镜像制作完毕,可以使用docker images进行查看,如本文章中第一张图片中蓝色框中的镜像。

总结

在已经制作好的mmdetection的镜像的基础上,安装新的包,制作新的镜像并push到harbor。在此过程中,熟悉images,container,repository三个概念,以及运用docker中images, ps,run, commit, push,login等命令。(命令具体的详细讲解:可以参考菜鸟教程
坑:利用dockerfile制作镜像

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值