深入了解Docker镜像操作

Docker是一种流行的容器化平台,它允许开发者将应用程序及其依赖项打包成容器,以便在不同环境中轻松部署和运行。在Docker中,镜像是构建容器的基础,有些家人们可能在服务器上对docker镜像的操作命令不是很熟悉,本文将深入探讨Docker镜像的操作。

什么是Docker镜像?

Docker镜像是一个轻量级、独立的、可执行的软件包,包含了运行应用程序所需的一切:代码、运行时环境、系统工具和库。Docker镜像是不可修改的,任何更改都会创建一个新的镜像。

Docker镜像操作命令

  • 获取现有镜像

使用docker pull命令可以从Docker Hub或其他镜像仓库获取现有的Docker镜像。例如,要获取mysql8.0的镜像,可以运行以下命令:

docker pull mysql:8.0 

mysql:8.0 是镜像名和版本

  • 查看本地镜像列表

运行以下命令以查看本地存储的Docker镜像列表:

docker images

如果本地镜像比较多的话可以用grep 过滤下

perl 复制代码
docker images | grep mysql

_20230901214644.png

  • 删除镜像

使用docker rmi命令可以删除本地的Docker镜像,我们可以根据镜像名+版本 号或者镜像Id删除

镜像名:版本 删除

docker rmi python:3.10-slim

IMAGE ID 删除

docker rmi eb5bc7d10d52

_20230901215032.png

  • 标记镜像

使用docker tag命令可以为镜像添加标签,以便更好地组织和管理镜像。

镜像名:版本

docker tag python:3.9 python-xj:3.9-xj

IMAGE ID

docker tag 21a7e8111dc2 python-alpine-xj:3.9-alpine-xj

_20230901215808.png

  • 镜像保存为文件

语法

css 复制代码
docker save [OPTIONS] IMAGE [IMAGE...]

参数说明:

  • OPTIONS: 可以使用以下选项来定制docker save命令的行为:

    • -o, --output=[]: 指定输出文件名,将镜像保存到指定文件,默认是STDOUT。
    • --quiet, -q: 静默模式,只输出存档文件名。
  • IMAGE: 要保存为tar存档文件的一个或多个Docker镜像的名称或ID。

保存单个镜像到tar文件

docker save -o python.tar python:3.9

保存多个镜像到一个tar文件

 docker save -o pythonstwo.tar python:3.9 python:3.9-alpine

_20230901220925.png

  • 用文件加载镜像
css 复制代码
docker load [OPTIONS]

参数说明:

  • OPTIONS: 可以使用以下选项来定制docker load命令的行为:

    • -i, --input=[]: 指定输入文件名,从指定文件加载镜像,默认是STDIN。
css 复制代码
 docker load -i python.tar

_20230901222020.png

总结

Docker镜像是Docker容器的基础,它们是可重用、可共享的软件包,使应用程序的部署和管理变得更加简单和可靠。在本文中,我们了解了如何获取、构建、查看、删除、标记、保存和加载Docker镜像,这些都是在Docker世界中必不可少的操作。

希望这篇文章帮助你更深入地理解Docker镜像的操作。如果你有任何问题或需要更多深入的信息,请随时留言。

相关推荐
潜洋13 分钟前
Spring Boot教程之五:在 IntelliJ IDEA 中运行第一个 Spring Boot 应用程序
java·spring boot·后端
St_Ludwig1 小时前
C语言 蓝桥杯某例题解决方案(查找完数)
c语言·c++·后端·算法·游戏·蓝桥杯
vener_1 小时前
LuckySheet协同编辑后端示例(Django+Channel,Websocket通信)
javascript·后端·python·websocket·django·luckysheet
计算机毕设孵化场2 小时前
计算机毕设-基于springboot的多彩吉安红色旅游网站的设计与实现(附源码+lw+ppt+开题报告)
vue.js·spring boot·后端·计算机外设·课程设计·计算机毕设论文·多彩吉安红色旅游网站
爪哇学长2 小时前
解锁API的无限潜力:RESTful、SOAP、GraphQL和Webhooks的应用前景
java·开发语言·后端·restful·graphql
战神刘玉栋2 小时前
《SpringBoot、Vue 组装exe与套壳保姆级教学》
vue.js·spring boot·后端
码到成功>_<3 小时前
Spring Boot实现License生成和校验
数据库·spring boot·后端
Ztiddler4 小时前
【npm设置代理-解决npm网络连接error network失败问题】
前端·后端·npm·node.js·vue
货拉拉技术4 小时前
多元消息融合分发平台
javascript·后端·架构
醒过来摸鱼4 小时前
【Golang】协程
开发语言·后端·golang